Я хотел бы знать, возникнут ли какие-либо проблемы, если я одновременно удержу два boost::scoped_locks. Блокировки блокируют разные мьютексы. Рассмотрим следующий пример:
void foo1()
{
boost::recursive_mutex::scoped_lock lock(mutex1);
foo2();
}
void foo2()
{
boost::recursive_mutex::scoped_lock lock(mutex2);
}
Я знаю, что это не должно вызывать тупиковую ситуацию. Но есть ли другие проблемы. Может быть, это может привести к тому, что поток будет спать слишком долго?