空无限While循环的CPU使用率增加

桑托什熊猫

谁能解释我为什么以下无限循环会占用大量CPU(CPU usage has increased upto 50% if total core is 2 and 100% if total CPU core is just 1

但是,如果我取消注释该行,它将减少到1或2个CPU使用率?

    public class Program
    {
        public static void Main(string[] args)
        {
            while (true)
            {
                //Console.WriteLine("hello..");
            }
        }
    }
拉胡尔·特里帕蒂(Rahul Tripathi)

原因是因为您的CPU在执行该循环时无法执行其他任何操作。CPU并不知道无限循环并不是一个复杂的计算,只需要大量的迭代即可。因此,它将继续评估该真实条件,最终导致CPU使用率增加的消耗。

您可能还想检查停止并着火

附带说明:

如果要避免无限循环,则只需使用即可WaitHandle要使该过程退出外部世界,请使用EventWaitHandle带有唯一字符串的a。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章