bitcoin/bitcoin — pull request #1292 by sipa (2012-05-13 22:53:47+00:00)
Title: Use boost::thread locking instead of interprocess

Luke noticed there was a boost/thread/* set of synchronisation primitives, separate from those in boost/interprocess/sync/*. Given that they do not need to cope with locks being in shared memory, they are different and simpler on some systems.

This commit replaces all sync.{h,cpp} infrastructure by systems provided by boost/thread/*.

So far, it seems to work well on Linux, OSX and BSD (the latter two required a workaround before, as the interprocess semaphores and condition variables used spinlocks - it seems the thread ones don't).