Hi, I am trying to implement an embedded Java program that interacts and gets async events from native code. I need multiple Java threads, so my understanding is that I should not block inside a native function. I understand I can get the events by polling from a Java thread, but that is too inefficient for the application I am working on. Question then is, could anyone suggest a good way to get the async events from the native 'C' code into the Java KVM ? If possible, pointing me to sample 'C' and Java code that does it would be fantastic. TIA. Guy.