This is the mail archive of the cygwin-patches@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH]: Updated pthread_cond patch.


This is a slightly modified version of my still pending patch. The
modifications were made to support rwlocks.

2003-02-27  Thomas Pfaff  <tpfaff at gmx dot net>

	* thread.h (pthread_cond::ExitingWait): Remove.
	(pthread_cond::mutex): Ditto.
	(pthread_cond::cond_access): Ditto.
	(pthread_cond::win32_obj_id): Ditto.
	(pthread_cond::TimedWait): Ditto.
	(pthread_cond::BroadCast): Ditto.
	(pthread_cond::Signal): Ditto.
	(pthread_cond::waiting): Change type to unsigned long.
	(pthread_cond::pending): New member.
	(pthread_cond::semWait): Ditto.
	(pthread_cond::mtxIn): Ditto.
	(pthread_cond::mtxOut): Ditto.
	(pthread_cond::mtxCond): Ditto.
	(pthread_cond::UnBlock): New method.
	(pthread_cond::Wait): Ditto.
	* thread.cc: Update list of cancellation points.
	(pthread_cond::pthread_cond): Rewrite.
	(pthread_cond::~pthread_cond): Ditto.
	(pthread_cond::TimedWait): Remove.
	(pthread_cond::BroadCast): Ditto.
	(pthread_cond::Signal): Ditto.
	(pthread_cond::UnBlock): Implement.
	(pthread_cond::Wait): Ditto.
	(pthread_cond::fixup_after_fork): Rewrite.
	(pthread_mutex::fixup_after_fork): Remove DETECT_BAD_APP
	conditional.
	(__pthread_cond_broadcast): Just return 0 if the condition is
	not initialized. Call pthread_cond::UnBlock to release blocked
	threads.
	(__pthread_cond_signal): Ditto.
	(__pthread_cond__dowait): Rewrite.
	(pthread_cond_timedwait): Add pthread_testcancel call. Fix
	waitlength calculation.
	(pthread_cond_wait): Add pthread_testcancel call.


Attachment: pthread_cond.patch
Description: Text document

Attachment: condvar9.c
Description: Text document

Attachment: condvar7.c
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]