gcc/libjava/include
Bryce McKinlay b834f1fa06 Makefile.in: New #defines and friends for Thread.h.
* Makefile.in: New #defines and friends for Thread.h.
        * posix-threads.cc: (struct starter): Remove `object'.
        (_Jv_CondWait): Use interruptable condition variables and new
        recursive mutexes. New return codes on interrupt or non-ownership
        of mutex.
        (_Jv_CondNotify): Ditto.
        (_Jv_CondNotifyAll): Ditto.
        (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt
        the target thread by signaling its wait condition.
        (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct,
        not the starter struct. Initialize wait_mutex and wait_cond.
        (_Jv_MutexLock): New recursive mutex implementation. Moved from
        posix-threads.h.
        (_Jv_MutexUnlock): Ditto.
        (really_start): Set info->data->thread from pthread_self() to work
        around a race condition. Destroy wait_mutex and wait_cond when run()
        returns.
        * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded
        `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is
        set.
        startable_flag: New private field.
        (Thread): Initialize `startable_flag'.
        (toString): Check for null thread group.
        * java/lang/natThread.cc: (struct natThread): New fields
        `join_mutex', `join_cond'. Removed fields `joiner', `next'.
        (class locker): Removed.
        (initialize_native): Initialize `join_cond' and `join_mutex'.
        (interrupt): Now just calls _Jv_ThreadInterrupt().
        (join): Simplified. Just wait on the target thread's join condition.
        (finish_): Remove join list code. Unset thread group. Signal
        potential joiners by notifying the dying threads join_cond.
        (start): Check for illegal restarts.
        * java/lang/natObject.cc: Check for return value of _Jv_CondWait and
        act appropriatly.
        * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related
        #defines and #ifdefs.
        (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond',
        `wait_mutex', `next'.
        (struct _Jv_ConditionVariable_t): Define as a struct instead of
        directly mapping to pthread_cond_t.
        (struct _Jv_Mutex_t): New recursive implementation.
        (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check.
        _Jv_HaveCondDestroy: Never define this for posix-threads.
        (_Jv_CondNotify): Remove inline implementation(s), prototype instead.
        (_Jv_CondNotifyAll): Ditto.
        (_Jv_MutexLock): Ditto.
        (_Jv_MutexUnlock): Ditto.
        (_Jv_MutexInit): Changed to reflect new mutex implementation.
        (_Jv_MutexDestroy): Ditto.
        (_Jv_CondDestroy): Removed.
        (_Jv_PthreadGetMutex): Removed.
        * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an
        error. Add a FIXME about this.
        (_Jv_CondNotifyAll): Ditto.
        * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess
        _JV_NOT_OWNER on other errors. Add FIXME.

From-SVN: r32773
2000-03-28 03:22:24 +01:00
..
boehm-gc.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
config.h.in
default-signal.h [multiple changes] 2000-03-26 20:33:04 +00:00
i386-signal.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
java-assert.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
java-chardecomp.h
java-chartables.h
java-cpool.h [multiple changes] 2000-03-26 20:33:04 +00:00
java-insns.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
java-interp.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
java-props.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
jni.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
jvm.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
Makefile.am re GNATS libgcj/43 (jni.h not installed) 2000-03-06 02:50:38 +00:00
Makefile.in natArray.cc (newInstance): Don't allow array of `void' to be created. 2000-03-09 04:50:49 +00:00
name-finder.h
no-gc.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
no-threads.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
posix-threads.h Makefile.in: New #defines and friends for Thread.h. 2000-03-28 03:22:24 +01:00
sparc-signal.h All files: Updated copyright information. 2000-03-07 19:55:28 +00:00
stamp-h.in
win32-signal.h [multiple changes] 2000-03-15 22:03:19 +00:00
win32-threads.h Makefile.in: New #defines and friends for Thread.h. 2000-03-28 03:22:24 +01:00