我正在使用 Visual Studio 2012 和 C++,我需要每 5 分钟调用一个函数,我已经设法做到了,但它占用了我 25% 的 CPU,这远非理想。
代码如下,
time_t start;
time_t end;
time(&start);
while (1) {
time(&end);
double dif = difftime (end,start);
if (dif >= 300) { autofunction(); time(&start);} else {} }
有没有更高效的 CPU 方法来每 5 分钟调用一个函数,或者有什么方法可以减慢我的 while 循环?
任何指导将不胜感激。
最佳答案
Windows 有 Sleep(),对于每 300 秒发生一次的事情来说,这非常好。 Windows 中也有计时器,它可能带有一个 timerproc 参数,它是一个函数——但请注意,这是一个 C 函数,而不是 C++,因此它不能是一个类成员函数,除非它是一个静态函数。
关于c++ - C++中的方法,每隔特定分钟数调用一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14014713/