From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Mon, 21 Jun 2010 10:40:57 -0400 To: 9fans@9fans.net Message-ID: In-Reply-To: References: <97d3416a6d7cadb18e8723fff3d2e2a8@hamnavoe.com> <81727c869e97f501968f868ee8794852@kw.quanstro.net> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: Re: [9fans] interesting timing tests Topicbox-Message-UUID: 35f4b082-ead6-11e9-9d60-3106f5b1d025 void lock(ulong *l) { ulong old; ushort next, owner; old = _xadd(l, 1); for(;;){ next = old; owner = old>>16; old = *l; if(next == owner) break; } } void unlock(ulong *l) { _xadd(l, 1<<16); } - erik