正如标题所说,我想创建一个简单的计时器/刻度函数,例如5分钟,以便我可以调用另一个函数,然后计时器再次启动,但不使用睡眠或时钟功能。那么有没有任何功能或方法,以便它例如在几秒钟内上升或下降?谢谢你的帮助。
答案 0 :(得分:3)
虽然你说你想避免"时钟功能"但我不知道如何在没有时钟的情况下计算5分钟。这是一个非常基本的,但便携式,计时器。
std::thread
用于创建线程std::chrono
用作时钟 结果:每5分钟调用foo()
方法。
#include <thread>
#include <iostream>
void foo()
{
std::cout << "Hello !\n";
}
int main()
{
std::thread([&]
{
while(true)
{
// Wait 5 minutes
std::this_thread::sleep_for(std::chrono::minutes(5));
// Call our method
foo();
}
}).detach();
// Execution continues ...
std::cin.get();
}
注意:
std::chrono
充满了很酷的东西来操纵日期和时间,你可以用它轻松调整你的计时器。