分为CPU麋集型和IO麋集型
CPU
这种任务消耗的主要是 CPU 资源,可以将线程数设置为 N(CPU 焦点数)+1,比 CPU 焦点数多出来的一个线程是为了防止线程偶发的缺页中断,或者其它原因导致的任务停息而带来的影响。一旦任务停息,CPU 就会处于空闲状态,而在这种情况下多出来的一个线程就可以充分利用 CPU 的空闲时间。
IO麋集型
这种任务应用起来,系统会用大部分的时间来处理 I/O 交互,而线程在处理 I/O 的时间段内不会占用 CPU 来处理,这时就可以将 CPU 交出给其它线程使用。因此在 I/O 麋集型任务的应用中,我们可以多设置一些线程,详细的盘算方法是 : 焦点线程数=CPU焦点数量*2。
Java线程池中队列常用范例有哪些?