C ++:将当前时间与下一个工作时间进行比较

时间:2018-01-23 23:42:59

标签: c++ time chrono

我正在研究自动化程序。这个想法是,在执行一个动作之后,它增加了应该执行下一个动作的时间。我之所以选择这种方法而不是简单的sqs.us-[east | west]-1.amazonaws.com语句,是因为我正在等待用户键盘输入,它会执行各种操作。

我遇到的问题是Sleep()似乎总是评估为真,因此没有等待时间。

这是我第一次使用这些功能。我感谢任何帮助!

std::chrono::steady_clock::now() > next_work_period

1 个答案:

答案 0 :(得分:4)

下一个工作期间 直到 怎么样?像这样:

auto next_work_period = std::chrono::steady_clock::now();

while (1) {

    std::this_thread::sleep_until(next_work_period);

    doTheThing();

    // Calculate next click time, 20 seconds from now
    next_work_period += std::chrono::seconds(20);
}