目录
线程池的创建方式:
(1)继承Thread类;很少用,实际都是面向接口编程。
(2)实现Runable接口 ; (3)实现Callable接口(JDK>=1.5);(4)线程池创建。
线程池的优势
Runable和Callable接口的区别:
1. Runable没有返回值,Callable接口有返回值;
2.接口实现的方法不一样,Runable实现run方法,Callable实现call方法;
3.Callable可以声明抛出异常。
发现没有一个Thread实现了Callable接口,都是runnable接口,于是要通过一个中间件适配器即实现了runnable接口有实现了callable接口,即futureTask方法
线程池是通过Executor框架实现的,该框架中Executor,Executors(工具类),ExecutorService
其中三个工具类:Array Arrays(Arrays.aslist());Collection Collections; Executor Executors.
线程池的底层就是ThreadPoolExecutor类
java的几种线程池
1.executors.newFixedThreadPool(int); 执行长期的任务
2.executors.