696148e298
On non-windows platforms this just used a semaphore, which meant that multiple calls to signal() would result in wait() returning multiple times.