Re: POSIX semaphores in JNI?
From: Stefan Poehn (stefan.poehn_at_IH8SPAMbms.de)
Date: 07/26/04
- Next message: Thomas Schodt: "Re: Open letter to sun about java generics syntax"
- Previous message: Christophe Vanfleteren: "Re: List directory with 40000 files."
- In reply to: Kevin McMurtrie: "POSIX semaphores in JNI?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Mon, 26 Jul 2004 12:34:36 +0200
"Kevin McMurtrie" <mcmurtri@dslextreme.com> schrieb im Newsbeitrag
news:mcmurtri-6D6280.00275024072004@corp-radius.supernews.com...
> Can POSIX semaphores be used in Java 1.4.2 JNI code? I have a C++ image
> rendering library that is I/O, memory, and CPU intensive. The
> operations can be lengthy and various stages of rendering are cached.
>
I have used Win32 and vxWorks Semaphores in a JNI project (2 years ago) and
both worked fine. Are the vxWorks semaphores posix compliant?
If you call a method that blocks on a taken semaphore, it does not matter if
you call from C/C++ or Java, all methods will block.
The only pitfall I have encountered is: You cannot create a thread in C/C++
and send any calls to the java virtual machine before you call
AttachCurrentThread.
> The thread management is fairly complex and fined-grained to make sure
> that operations do not interfere with each other, especially during I/O.
> Is it OK to use POSIX recursive semaphores to control threading? The
> JNI docs don't mention it. Information on the web conflicts or is
> obsolete (mentions green threads problem).
>
> MacOS X uses 1:1 pthreads. For Linux and Solaris, I'm not sure if the
> POSIX routines are safe. JNI threading could replace POSIX threading
> but I'm worried about its performance with large caches and numbers of
> semaphores. Also, maintaining proper references to the Java sync
> objects will be non-trivial. This library has an eventual memory
> corruption problem on Solaris only. I don't know if I should spend two
> days rewriting my semaphore C++ class for JNI threading or keep looking
> for the usual C++ memory bugs. The crash takes 6 to 12 hours to appear
> so debugging is time consuming.
>
>
> Thanks
- Next message: Thomas Schodt: "Re: Open letter to sun about java generics syntax"
- Previous message: Christophe Vanfleteren: "Re: List directory with 40000 files."
- In reply to: Kevin McMurtrie: "POSIX semaphores in JNI?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|