C# Winform程序CPU占用高的原因和解决方法

程序CPU占用高的可能原因:

1、存在死循环;

为什么死循环会导致CPU占用高呢?
      虽然分时操作系统是采用时间片的机制对CPU的时间进行管理的,也就是说到了一定时间它会自动从一个进程切换到下一个进程。但是,当进入别的进程后,若该进程告诉系统它现在不需要做什么,不需要那么多的时间,这个时候,系统就会切换到下一个进程,当切换到死循环所在进程后,由于它一直在循环,永远告诉系统它有事情做(实质仅在死循环,没做任何事),那么系统就尽可能的将其他进程省下了的时间让它做死循环了,CPU占用不高才怪咧。
解决方法:在死循环中添加“Thread.sleep(50);”

        public void HsThread()
        {
            while (true)
            {
                //在死循环里休眠50毫秒即可解决
                Thread.Sleep(50);
            }
        }

 

---------------------

原文:https://blog.csdn.net/youarenotme/article/details/80092327
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2018-12-24 11:29  火星撞鸡蛋  阅读(5447)  评论(2编辑  收藏  举报