1

我需要一个 C 程序,它可以在作为参数传入的精确 CPU 秒数内执行。我需要这样一个程序来测试监控进程 CPU 使用率的代码。

例子:

busywait x

应该在我的处理器上运行 x 秒。

4

2 回答 2

1

这是我为解决我的问题而编写的 C 程序。它不断检查时钟周期数,直到使用了正确的处理器秒数。

#include <stdio.h>
#include <time.h>

int main(int argc, char * argv[])
{
     clock_t start, end;
     double cpu_time_used;
     int wait;

     sscanf(argv[1], "%d", &wait);

     start = clock();
     end = clock();
     while (((double) (end - start)) / CLOCKS_PER_SEC < wait)
     {
          end = clock();
     }
}
于 2013-05-10T19:31:51.417 回答
-1

我认为您可以输入sleep xx 为秒的 shell。我只在 Mac 上测试了 bash,但我相信其他 unix 应该有同样的东西。

于 2013-05-09T22:11:55.823 回答