当前位置: 首页 > news >正文

C# 多线程造成CPU占用率高

当线程多的时候就会造成CPU内存占用率过高

 private void button1_Click(object sender, EventArgs e){Thread TH1, TH2, TH3, TH4, TH5;TH1 = new Thread(Thread1){IsBackground = true};TH2 = new Thread(Thread2){IsBackground = true};TH3 = new Thread(Thread3){IsBackground = true};TH4 = new Thread(Thread4){IsBackground = true};TH5 = new Thread(Thread5){IsBackground = true};TH1.Start();TH2.Start();TH3.Start();TH4.Start();TH5.Start();}public void Thread1(){while (true) ;}public void Thread2(){while (true) ;}public void Thread3(){while (true) ;}public void Thread4(){while (true) ;}public void Thread5(){while (true) ;}

上面这段代码,CPU的占用率高

解决方法:

只要我们上每个线程岔开时间执行即可,我们在每一段循环中增加thread.sleep(1),让线程休眠等待。

        public void Thread1(){while (true)Thread.Sleep(1);}public void Thread2(){while (true)Thread.Sleep(1);}public void Thread3(){while (true)Thread.Sleep(1);}public void Thread4(){while (true)Thread.Sleep(1);}public void Thread5(){while (true)Thread.Sleep(1);}

http://www.lryc.cn/news/389227.html

相关文章:

  • 谈谈在不同公司中的SAP职位
  • 服务器连接不上
  • 论文辅导 | 基于贝叶斯优化-卷积神经网络-双向长短期记忆神经网络的锂电池健康状态评估
  • 安卓实现微信聊天气泡
  • 软件测试(功能、接口、性能、自动化)详解 | 测试人生路
  • 【面试题】网络IO模型
  • 数据结构-----【链表:基础】
  • 如何在pycharm里面运行pytest用例
  • Charles抓包工具踩坑记录
  • 【RabbitMQ实战】邮件发送(直连交换机、手动ack)
  • python 笔试面试八股(自用版~)
  • 《SpringBoot+Vue》Chapter04 SpringBoot整合Web开发
  • 腾讯地图异步调用
  • 通过docker overlay2 目录名查找占用磁盘空间最大的容器名和容器ID
  • 每周算法:有向图强连通分量
  • Python习题 053:在逻辑值检测时会被认为是真值的是?
  • 基于RackNerd + CentOS 7 64 Bit + aaPanel 的那些事
  • 大数据期末复习——hadoop、hive等基础知识
  • 什么是客户体验自动化?
  • 高效除氟:探索CH-87up树脂在氟化工废水处理中的应用
  • 【Git】LFS
  • 隐式转换的魔法:Scala中隐式转换的深度解析
  • 外贸企业选择什么网络?
  • Redis 7.x 系列【14】数据类型之流(Stream)
  • (四)opengl函数加载和错误处理
  • RuoYi-Vue3不启动后端服务如何登陆?
  • Typora(跨平台 Markdown 编辑器 )正版值得购买吗
  • springboot个人证书管理系统-计算机毕业设计源码16679
  • 读-改-写操作
  • 海外仓系统应用教程:解决了小型海外仓哪些问题