接口Executor仅仅是一种规范,是一种声明,是一种定义,并没有实现任何的功能,所以大多数情况下需要用实现类来完成指定的功能。
1,使用newCachedThreadPool()方法创建无边界线程池。
可以看到,A和B几乎是同时开始运行的,创建了两个线程,并且是异步的。
可以看到循环打印也是成功的。
验证newCachedThreadPool()创建为Thread池:
说明线程池对象创建是完全成功的,但是还没有达到 池中的线程对象可以复用的效果。
使用newCachedThreadPool()定制线程工厂:
实现了对象的定制性。