dcsimg
I have a WinNT Java-based server application which...
0 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   Joen_Moreno
Posted On:   Sunday, October 29, 2000 10:34 PM

I have a WinNT Java-based server application which polls a SCSI Device (every 1 minute) for its status data. It does this through a native method call. This native method in turn calls ASPI functions (wnaspi32.dll). The problem with this server is it's leaking handles. I noticed when I used the Performance Manager and monitor the Handle count of the Java process. Every time the server calls this native function, the Performance Monitor shows it leaks 6 handles. The handle count (as well as the Private Bytes count) of the Java Process grows to a point wherein after some time (around 24hours) NT complains of a wnaspi32.dll error! My question is, how or when does JVM, through the JNI function call, create the handles. Ho   More>>

I have a WinNT Java-based server application which polls a SCSI Device (every 1 minute) for its status data. It does this through a native method call. This native method in turn calls ASPI functions (wnaspi32.dll).


The problem with this server is it's leaking handles. I noticed when I used the Performance Manager and monitor the Handle count of the Java process. Every time the server calls this native function, the Performance Monitor shows it leaks 6 handles. The handle count (as well as the Private Bytes count) of the Java Process grows to a point wherein after some time (around 24hours) NT complains of a wnaspi32.dll error!


My question is, how or when does JVM, through the JNI function call, create the handles. How can I release these handles? If you can, please enumerate some possibilities where and when handles are created by the JVM during a JNI function call in WinNT?


Explanation on possible causes, recommendation on possible solutions, and/or simply pointing me where to look in my code will highly be appreciated..

   <<Less
About | Sitemap | Contact