首先要考虑执行的任务是什么类型:
1、IO密集型
2、计算密集型
文章插图
IO密集型:以大量任务读写数据库,读写文件为主,内存中的运算很少,线程基本阻塞在IO上面 。这种情况下,尽量多开启一些线程并发做IO操作,因为在IO过程中,CPU几乎是闲置的 。
计算密集型:任务以内存中的计算为主 。这时候CPU是满负荷工作,即使开再多的线程,只会徒增线程上下午切换的成本 。这种情况下,CPU是几核,就开几个线程 。
线程数 = (IO时间 + CPU工作时间) / CPU工作时间 * 核数
IO密集型,相当于CPU工作时间无穷小的情况,这时候得到的线程数很大 。
计算密集型,相当于IO时间无穷小,计算得的线程数约等于CPU核数 。
【一个进程开启多少线程最好】
推荐阅读
- 表明你已经做好升职的准备了 一个人要升职的预兆
- 伤感的爱情文章,卑微一个人 悲伤爱情文章
- 想要一个自己的博客,源代码拿去随便用 新浪博客代码
- 明朝皇帝朱常洛后面是哪一个皇帝? 明朝皇帝朱常洛做多少年皇帝
- 淘小铺邀请一个人奖励多少钱 淘小铺奖金制度讲解
- 简短又让人笑出鼻涕泡的笑话 一个又短又好笑的笑话
- 世界上最贵的泡面多少钱一包 世界上最贵的泡面是哪一个
- 肠道痉挛的症状是什么?
- 母亲节画一张画 画一个母亲节的一幅画
- 第一个发明盲文的人 盲文谁发明