apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@rowe-clan.net>
Subject Re: Conditionals...
Date Tue, 31 Jul 2001 20:50:07 GMT
From: "Aaron Bannert" <aaron@ebuilt.com>
Sent: Tuesday, July 31, 2001 2:21 PM


> I've been looking into this over the last few days and although I'm
> totally in favor of adding condition variables to APR, I'm not yet
> convinced that we can properly implement them on non-POSIX platforms
> without some level of kernel support. There is one specific place where
> I'm seeing a problem:
> 
> - cond_wait() takes a locked mutex that is associated with the cond.
> - it will unlock that mutex and go to sleep
> - when it awakens it must immediately reacquire that mutex (awaken() and
>   acquire() must be a single atomic operation)
> - finally, cond_wait() returns.
> 
> Does anyone know of a way around this without some sort of kernel support
> to make those two operations atomic? This seems like a serious potential
> for race/deadlocks.

Oh duh, this is a breeze on win32 [except that cond's themselves must be implemented.]

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/hh/winbase/synchro_5h2s.asp



Mime
View raw message