>> Otherwise, I could just implement my own synchronization, via inline assembly (since this doesn't have to be multi-platform) or C.< > > You are a bold person :-) I was under the impression this was easy using XADD / CMPXCHG with the LOCK prefix. How to yield / wait may be a different story, but how many possible general purpose options could there be?