配置线程池可以从以下几个方面考虑。

任务是CPU密集型、IO密集型或者混合型。

任务优先级,高中低。

任务时间执行长短。

任务依赖性:是否依赖其他系统资源。

CPU密集型可以配置可能小的线程,比如n+1个线程。

IO密集型可以配置较多的线程,如2n个线程。

混合型可以拆分IO密集型环任务和CPU密集型任务。

可以通过Runtime.getRuntime().availableProcessors()来获取CPU个数。

建议使用有界队列,增加系统的预警能力和稳定性。