【发布时间】:2017-04-26 11:00:05
【问题描述】:
是否有一种简单的方法可以使用 C++/stdlib 安装定期发生的计时器功能?我想摆脱循环:
using namespace std::chrono; // literal suffixes
auto tNext = steady_clock::now();
while (<condition>) {
std::this_thread::sleep_until(tNext);
tNext = tNext + 100ms;
...
该函数将在自己的线程中运行。
【问题讨论】:
-
你的意思是你想让定时器异步工作,而程序做其他事情吗?然后你应该把定时进程放在它自己的线程中。
-
@JasonLang 是的,当然,在它自己的线程中
-
你的意思是你想要类似
ping(100ms, callback)的东西吗? -
条件变量或互斥体呢?
-
cv 或 mutex 与时间有什么关系?
标签: c++ multithreading timer thread-sleep chrono