15-案例实现
案例实现
根据如下步骤来实现本案例。
1.复制 MyThread 、 MyThreadFactory 、 MyTask 类到本工程(参见8.7节)。本案例中将会用到它们。
2.实现本案例的主类,新建 Main 类和 main() 方法:
public class Main {
public static void main(String[] args) throws Exception {
3.创建一个新的 MyThreadFactory 对象 threadFactory :
MyThreadFactory threadFactory=new MyThreadFactory
("MyThreadFactory");
4.用 Executors 类的 newCachedThreadPool() 方法来创建一个新的 Executor 对象。传递一个之前已经创建好的工厂对象作为参数。而由于新的 Executor 对象将会使用该工厂来创建必要的线程对象,因此它将会执行 MyThread 线程:
ExecutorService executor=Executors.newCachedThreadPool
(threadFactory);
5.创建一个新的 Task 对象,并且用 submit() 方法将它传递到执行器中:
MyTask task=new MyTask();
executor.submit(task);
6.用 shutdown() 方法关闭该执行器:
executor.shutdown();
7.用 awaitTermination() 方法等待执行器的完成:
executor.awaitTermination(1, TimeUnit.DAYS);
8.打印信息以示本程序结束:
System.out.printf("Main: End of the program.\n");