gpt4 book ai didi

c - 简单的程序占用太多CPU

转载 作者:行者123 更新时间:2023-11-30 20:54:26 24 4
gpt4 key购买 nike

编辑:为什么这个问题被否决了?

我想知道为什么下面的代码使用了大量的CPU。我看不到任何可能导致此问题的内容。就是下面的代码。

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


void main(){

clock_t begin;
double time_spent;
int i = 0;


while(1){

begin = clock();
time_spent = 0;
while(time_spent < 60) {
time_spent = (double)(clock() - begin) / CLOCKS_PER_SEC;
}
i++;
printf("Eine Minute vergangen %i\n", i);
}
}

这个程序基本上检查一分钟已经过去,计算还完成了多少分钟并将其打印出来。

我在 ubuntu 终端上运行它,它消耗了我的 CPU。有人可以帮我解决这个问题吗?

最佳答案

坐在公交车站,等待一个小时左右的公交车到达,你不会每一秒,一毫秒,......,不是吗?但这正是您告诉 CPU 要做的事情,甚至值得您告诉它尽可能频繁、尽可能快地“查找时间”。

因此,根据所需的精度,告诉 CPU 在检查时间之间进行更长或更短的休息。

如果 1 秒的精度就足够了,则通过添加来测试时间之间等待 1 秒

      sleep(1);

进入内部while循环。

关于c - 简单的程序占用太多CPU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40331045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com