On 20 February 2006 14:33, Alex Dupre wrote: > Hello, > I have a question about signal handling and JNI under cygwin. > > The scenario is the following: > - a cygwin program register a function to handle SIGINT and SIGTERM signals > - the program then launches the Java Virtual Machine via the JNI > invocation API, telling it to not override any signal handlers > > Hitting a CTRL-C should then immediately run the defined signal handler, > but this is not the case. For some reason (what exactly?) inside the > java program I need to periodically call a native function linked with > cygwin, but this is not enough. In the called function I have to do > something more, like printing a char to stdout or /dev/null (calling > printf("") with an empty string doesn't work). Only in this way the > signal handler is called as soon as I hit CTRL-C, otherwise it's ignored > or handled seconds/minutes later. > Maybe the callback to C code is mandatory under cygwin, but why should I > print something to have to signal handled? Any suggestions? > > -- > Alex Dupre
Well, have you read the internals doc about how signals work? http://cygwin.com/cgi-bin/cvsweb.cgi/~checkout~/src/winsup/cygwin/how-signals- work.txt?rev=1.14&content-type=text/plain&cvsroot=src cheers, DaveK -- Can't think of a witty .sigline today.... -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/