一个简单的计时器可以实现如下,
#include
#include
#include
#include
void timer_start(std::function func, unsigned int interval)
{
std::thread([func, interval]() {
while (true)
{
func();
std::this_thread::sleep_for(std::chrono::milliseconds(interval));
}
}).detach();
}
void do_something()
{
std::cout << "I am doing something" << std::endl;
}
int main() {
timer_start(do_something, 1000);
while(true);
}
这个简单的解决方案不提供停止计时器的方法.计时器将继续运行,直到程序退出.