对于在实际开发中使用到多线程,并发等操作,如何设置合理的线程数量
IO密集型
Nthreads = NCPU * UCPU * (1 + W/C)
NCPU是处理器的核的数目,可以通过Runtime.getRuntime().availableProcessors()得到
UCPU是期望的CPU利用率(该值应该介于0和1之间)
W/C是等待时间与计算时间的比率
无IO操作
Nthreads=NCPU+1
···
对于在实际开发中使用到多线程,并发等操作,如何设置合理的线程数量
IO密集型
Nthreads = NCPU * UCPU * (1 + W/C)
NCPU是处理器的核的数目,可以通过Runtime.getRuntime().availableProcessors()得到
UCPU是期望的CPU利用率(该值应该介于0和1之间)
W/C是等待时间与计算时间的比率
无IO操作
Nthreads=NCPU+1
···
本文标题:Java的线程数设置
本文链接:https://www.haomeiwen.com/subject/gthxwhtx.html
网友评论