2003-01-28 Ranjit Mathew <rmathew@hotmail.com> Fixes PR java/9254: * include/win32-threads.h (_Jv_Mutex_t): Convert to a struct additionally containing id of the owner thread as well as the number of nested times the thread has acquired the mutex. (_Jv_MutexInit): Initialise owner thread id and refcount to 0. (_Jv_MutexDestroy): Reset owner thread id and refcount to 0. (_Jv_MutexUnlock): Check if really the owner thread, reset owner thread id to 0 before leaving, if leaving for the last time. (_Jv_MutexLock): Set owner thread id in the mutex and increment refcount. (_Jv_ThreadYield): Yield using a call to Sleep(0). * win32-threads.cc (_Jv_CondWait): Check if really owner of the passed mutex. Pass handle of the broadcast event, instead of a pointer to it in Win32 ResetEvent( ) call. Remove incorrect return values. (_Jv_CondDestroy): Close both event handles and delete critical section. (_Jv_CondNotify): Check if really the owner thread. (_Jv_CondNotifyAll): Check if really the owner thread. (_Jv_InitThreads): Change daemon_cond to a manual-reset event. (really_start): Use SetEvent( ) to signal daemon_cond. (_Jv_ThreadWait): Remove SignalObjectAndWait( ) and use WaitForSingleObject( ) instead to wait for daemon_cond to be signalled. From-SVN: r62033
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
.cvsignore | Loading commit data... | |
Makefile.am | Loading commit data... | |
Makefile.in | Loading commit data... | |
boehm-gc.h | Loading commit data... | |
config.h.in | Loading commit data... | |
default-signal.h | Loading commit data... | |
dwarf2-signal.h | Loading commit data... | |
i386-signal.h | Loading commit data... | |
java-assert.h | Loading commit data... | |
java-chardecomp.h | Loading commit data... | |
java-chartables.h | Loading commit data... | |
java-cpool.h | Loading commit data... | |
java-insns.h | Loading commit data... | |
java-interp.h | Loading commit data... | |
java-props.h | Loading commit data... | |
jni.h | Loading commit data... | |
jvm.h | Loading commit data... | |
jvmpi.h | Loading commit data... | |
no-gc.h | Loading commit data... | |
no-threads.h | Loading commit data... | |
posix-threads.h | Loading commit data... | |
posix.h | Loading commit data... | |
s390-signal.h | Loading commit data... | |
sparc-signal.h | Loading commit data... | |
stamp-h.in | Loading commit data... | |
win32-signal.h | Loading commit data... | |
win32-threads.h | Loading commit data... | |
win32.h | Loading commit data... | |
x86_64-signal.h | Loading commit data... |