JAVAカスタムスレッドプール構成


ExecutorService threadPood = new ThreadPoolExecutor(0,//     
        8,//     
        1l,//  
        TimeUnit.SECONDS,//    
        new LinkedBlockingDeque(3),//       (Java                ,    ,     )
        Executors.defaultThreadFactory(),//       
        new ThreadPoolExecutor.AbortPolicy());//             

 
コアスレッド数:デフォルトは0で、タスク処理があれば作成し、タスク処理がなければ破棄できます.
最大スレッド数:CPU密集型計算の構成は:CPUコア数+1
                    IO密集型読み書きが多い構成:1、CPUコア数*2
                                                                2、CPUコア数/(1-ブロック係数)                 ブロック係数範囲:0.8~0.9範囲
 
CPUコア数取得:
public static void main(String[] args) {
    System.out.println(Runtime.getRuntime().availableProcessors());
}