Все.
Я новичок в буст-синхронизации, поэтому буду благодарен за критику кода ниже.
Можно ли использовать его в многопоточной среде?
Немногие потоки просто ждут, пока My_boost_event :: is_siagnaled () вернет true. Поток «Контроллер» просто инициирует настройку события в «сигнальное» состояние.
Спасибо.
class My_boost_event
{
private:
boost::mutex mutex_;
bool m_signaled;
public:
My_boost_event(bool signaled) : m_signaled(signaled)
{
}
void set()
{
boost::mutex::scoped_lock lock(mutex_);
m_signaled = true ;
}
void reset()
{
boost::mutex::scoped_lock lock(mutex_);
m_signaled = false;
}bool is_signaled()
{
boost::mutex::scoped_lock lock(mutex_);
return m_signaled;
}
};
Задача ещё не решена.