【发布时间】:2012-10-22 09:51:33
【问题描述】:
那么,这两个是一样的吗? 在任务管理器中使用延迟CPU使用率很疯狂..这与系统空闲进程相同吗?
#include <iostream>
#include <time.h>
//#include <windows.h>
int delay(long int time)
{
clock_t beginning = clock();
while(clock() - beginning < time) {}
return 0;
}
int main()
{
clock_t beginning = clock();
begin:
std::cout << "delay this by 1000ms\n";
//Sleep(1000);
delay(1000);
goto begin; //i know, i know
return 0;
}
【问题讨论】:
-
为什么要使用
label: ... goto label;而不是while (1) { ... }? -
反正我也不打算过度使用 goto..
-
是的,这就是为什么我建议用一个代替另一个。但是
goto版本是晦涩难懂的,完全没有理由。您甚至可以为自己保存//i know, i know评论。我不是在宣扬goto禁欲(在 C 中),我对迂回的做事方式感到震惊。
标签: windows performance winapi delay clock