一、前言
在《阿里巴巴Java开发手册》中提到:
- 创建线程或线程池时请指定有意义的线程名称,方便出错时回溯。
- 线程资源必须通过线程池提供,不允许在应用中自行显式创建线程。
- 线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样 的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。
因此,对创建线程池方法进行简单封装。
二、JAVA实现
该实现通过builder(建造者)模式进行设计,可以方便根据具体业务创建所需的线程池,同时屏蔽了具体实现方法,简单易用。
// 使用方法
ExecutorService threadsPool= ThreadsPoolBuilder.custom().setName("THREADS_POOL").build();
// 使用方法
ExecutorService threadPool= new ThreadPoolBuilder().setName("THREAD_POOL").build();