Hello, this is now a version that I am quite confident of. It is a special edition that doesn't use spinlocks. The only "principal" thing it still has that people might not like is dynamic allocation of auxiliary structures for mtx_t and cnd_t. For the mtx_t, this could perhaps be avoided, but for the cnd_t it is really convenient, because it clearly separates different batches of cnd-waiters that should never be mixed. In summary: - (almost) all is private futex - the internal locks use a minimal test-and-set logic that is modeled after C's atomic_flag - mutexes and conditions are simpler (I hope) than their pthread counterparts because they don't need process sharing or robustness Best Jens -- :: INRIA Nancy Grand Est ::: AlGorille ::: ICube/ICPS ::: :: ::::::::::::::: office Strasbourg : +33 368854536 :: :: :::::::::::::::::::::: gsm France : +33 651400183 :: :: ::::::::::::::: gsm international : +49 15737185122 :: :: http://icube-icps.unistra.fr/index.php/Jens_Gustedt ::