2002-06-12 Thomas Pfaff <tpfaff@gmx.net>

* thread.h (pthread::cleanup_stack): Renamed cleanup_handlers to
	cleanup_stack.
	* thread.cc (pthread::pthread): Ditto.
	(pthread::create): Fixed mutex verification.
	(pthread::push_cleanup_handler): Renamed cleanup_handlers to
	cleanup_stack.
	Mutex calls removed, used InterlockedExchangePointer instead.
	(pthread::pop_cleanup_handler): Renamed cleanup_handlers to
	cleanup_stack.
	(pthread::pop_all_cleanup_handlers): Ditto.
	(__pthread_once): Check state first and return if already done.
	(__pthread_join): DEADLOCK test reverted to __pthread_equal
	call.
	(__pthread_detach): Unlock mutex before deletion.
This commit is contained in:
Robert Collins
2002-06-23 07:36:21 +00:00
parent 0278e3a33f
commit f6709c07db
3 changed files with 45 additions and 24 deletions

View File

@@ -295,7 +295,7 @@ public:
private:
DWORD thread_id;
__pthread_cleanup_handler *cleanup_handlers;
__pthread_cleanup_handler *cleanup_stack;
pthread_mutex mutex;
friend void __pthread_exit (void *value_ptr);