From: John Maddock (john_at_[hidden])
Date: 2005-08-30 11:51:08
> Testing my own wrapper on x86_64 bit linux exposed a seeming deadlock
> on constructing a read_write_lock with a *::write_locked initial state
> in the constructor...
> I've distilled it to the plain code below that exhibits the same failure.
Matt, can you distil this test case a little more please:
* Get rid of the macros so we can read the code :-)
* Don't use Boost.Test for the tests, it's *not* thread safe, and bad things
may be happening in there.
* Don't declare variables as function-static: it's not thread safe. I'm not
sure if this is an issue or not from reading the code, with those macros in
place it's hard to see which bits are getting called by multiple threads.