You are probably looking for something like Dahm locks (invented by Dave Dahm on the Burroughs B5000 in the 1960s). Here is a long paper on locks including this origin:
http://pages.cs.wisc.edu/~remzi/OSFEP/threads-locks.pdf Here is an idea of the ALGOL define for acquire: DEFINE ACQUIRELOCK (ID) = BEGIN IF READLOCK (PROCESSID, CONTENDERS[ID]) ^= 0 THEN DO PROCURE (LOCKS[ID]) UNTIL READLOCK (-1, CONTENDERS[ID]) = 0; OWNERS [ID] := PROCESSID; END # On 7 Dec 2011, at 10:28, koko wrote: > In windows we have: > > LONG volatile Mylock = 0; > InterlockedIncrement(&Mylock); > InterlockedDecrement(&Mylock); > > > What should these be replaced with for OSX as in : > > #ifndef MAC > LONG volatile Mylock = 0; > #else > // Mac > #endif > > > void SetLock() > { > // EnterCriticalSection(&m_cs); > #ifndef MAC > while(Mylock){Sleep(0);}; // Give up timeslice > InterlockedIncrement(&Mylock); > #else > // Mac > #endif > } > > > void FreeLock() > { > // LeaveCriticalSection(&m_cs); > #ifndef MAC > InterlockedDecrement(&Mylock); > #else > // Mac > #endif > } > > _______________________________________________ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/cocoa-dev/ianjoyner%40me.com > > This email sent to ianjoy...@me.com _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com