A Williams の素敵なブログを読んでいました。
http://www.justsoftwaresolutions.co.uk/threading/condition-variable-spurious-wakes.html
そして、1つのことが私を悩ませています:偽のウェイクのためにスレッドがウェイクアップするとき、ミューテックスがロックされていますか?
boost::mutex::scoped_lock lock(the_mutex);
while(the_queue.empty())
{
the_condition_variable.wait(lock);
}
そうしないと .empty への呼び出しが安全でなくなるためだと思いますが、よくわかりません。