Мне нужно переписать некоторый код, который использует функцию Windows WaitforSingleObject.
myEvent = CreateEvent( NULL, FALSE, FALSE, szName );
WaitForSingleObject( myEvent, nMilliseconds );
Мне нужно дождаться события или тайм-аута.
Есть ли эквивалент этого в прямом C ++?
Я использую STL C ++ 11, а не любые другие библиотеки, такие как boost.
Вы не можете использовать подпрограммы потоков C ++ 11 с потоками win32 (если только вы не сильно возитесь с реализациями потоков mingw, что я бы не рекомендовал), и нет стандартного C ++, эквивалентного вызову API для конкретной ОС.
Вы можете, однако, использовать потоки C ++ 11 и использовать переменные условия (Ср. ожидание) выполнить то же самое, что WaitForSingleObject делает то есть
Редактировать: конкретно вам нужно Подожди пока