无限循环会降低性能吗?

时间:2017-04-28 16:00:15

标签: c# .net performance background

所以我目前正在开发一个C#.NET项目,该项目根据Performance Counters检查后台的当前CPU使用率和温度。 它的作用是,它以恒定的两秒延迟检索这些信息。

像这样:

while (true)
{
    Foo ();
    Thread.Sleep (2000);
}

我的应用程序的输出类型是控制台应用程序,不包含GUI并在后台运行。

我的问题是,此任务是否会降低计算机的性能?

提前致谢。

1 个答案:

答案 0 :(得分:1)

这不应该降低计算机的性能,因为你在每个动作之间都在休眠。据我所知,睡眠线程在CPU上花费不多(毕竟它几乎不是非操作)。

正如Sven在评论中提到的,如果你要说,从你的例子中删除线程睡眠,这会改变一切,因为你基本上要求你的CPU执行Foo操作多次尽可能一秒钟。