线程池线程大小
来源:3-8 异步优化详解

黄智1
2020-04-15
老师在讲解设置线程池核实时,您介绍的是参考AsyncTask的设置方法,虽然AsyncTask是根据当前设备拥有的核数来确定,但是AsyncTask又是根据原理确定这个公式的呢?如何确定这个公式是最优的
Math.max(2,Math.min(CPU_COUNT-1),4)
同时在Android10的代码中 AsyncTask的默认线程池直接设置为了固定值
写回答
1回答
-
随风绽放
2020-04-20
同学你好,确实是这样的,同时对于这两个值的变更源码中也给予了说明,确实是换策略了。
Math.max(2,Math.min(CPU_COUNT-1),4),这里为什么说它优可以参考呢。这样计算出来的线程池核心数是取决于CPU核心数的,一个hard code更会导致不同机型上的表现差异。
00
相似问题