Date: Thu, 28 Jan 1999 17:18:13 +0900 (JST) From: hashi@csl.rdc.toshiba.co.jp (Mikio Hashimoto) To: freebsd-java@FreeBSD.ORG Subject: signal handling in FreeBSD Java Message-ID: <199901280818.RAA18097@mailhost.csl.rdc.toshiba.co.jp>
next in thread | raw e-mail | index | archive | help
Dear freebsd-java reflector members I'd like to ask a question about signal handling in freebsd JDK. I'm developing a program that uses JNI and asynchronous IO. The program handles asynchronous input from a special socket interface through JNI, as shown in figure below. On arriving an asynchronous input, a signal SIGUSR1 is issued from the socket interface to the java process, then a preregistered signal handler of the java process is called. The handler invokes particular input method in user java library. User Java Library(with awt) ------------------------------------------- freebsd-jdk 1.1.7 Java VM +-------------------------------- | Native Method (written in C ) -----------+--------------------------------- IO,etc | special socket I/F for IEEE 1394 Free BSD kernel This program well worked for simple test program without awt widget library. But once GUI program with awt applied to the program, the java process frequently crashes or hangs up. Sometimes following messages can be seen. 1) X11TransSocketINETConnect: Can't connect errno=4 2) Warning: select failed I guess the message 1) tells that some signals(probably my socket signal) disrupted socket operation in X windows system. The error number four corresponds to the EINTR error. Is it right? As for second message, actually I use select system call for asynchronous input handling. Above explanation is very simplified one. I'm afraid that using select() system call in native method disrupts java process on working for normal class loading or networking. Does anyone have suggestion about my problem? Best Regards. -------- Mikio Hashimoto Laboratory I, Communication and Information Laboratories, Toshiba R&D Center fax +81-44-520-1806 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901280818.RAA18097>