2016-06-23 2 views
1

Я хочу просыпаться по моделям в указанное время. Могу ли я сделать это так?проснуться в указанное время

#include <chrono> 
#include <thread> 
using namespace std::literals::chrono_literals; 
void foo() {} 
int main() 
{ 
    using clock = std::chrono::steady_clock; 
    clock::time_point next_time_point = clock::now() + 20s; 
    foo(); 
    std::this_thread::sleep_until(next_time_point); 
} 

ответ

3

Вы никогда не должны использовать сон. Вместо этого подождите при условной переменной

+0

Также рассмотрите, что переменные условия могут иметь спонтанные пробуждения, которые требуют, чтобы они были объединены с дополнительным условием (например, bool, который вы проверяете). – Taredon

+0

У вас есть пример. Очень признателен! – Damian

+0

У вас есть пример herehttp: //en.cppreference.com/w/cpp/thread/condition_variable – crn

Смежные вопросы