2 つの boost::scoped_locks を同時に保持すると問題が発生するかどうかを知りたいです。ロックは異なるミューテックスをロックしています。次の例を検討してください。
void foo1()
{
boost::recursive_mutex::scoped_lock lock(mutex1);
foo2();
}
void foo2()
{
boost::recursive_mutex::scoped_lock lock(mutex2);
}
これがデッドロックを引き起こすべきではないことを私は知っています。しかし、他に問題はありますか。これにより、スレッドが長時間スリープ状態になる可能性がありますか?