很多人都知道线程有两种创建方式:继承Thread和实现Runnable接口,其实我们还有另外一种方式创建,那就是通过线程池来创建线程:
第一步:建立一个ThreadPoolDemo类实现Callable接口,并实现该接口的call()方法,这个方法就类似于Runnable接口中的run()方法:
Class ThreadPoolDemo implements Callable{
public Object call(){
.........//执行内容
}
}
第二步:建立一个测试类Test
class Test{
public static void main(String [] args){
ThreadPoolDemo tpd=new ThreadPoolDemo();//建立ThreadPoolDemo对象
ExecutorService service=Executors.newFixedThreadPool(2);//这里是建立了一个常量池,
//在这个常量池里面可以存放两个ThreadPoolDemo对象,后面括号后面的参数表示存放的个数
service.submit(tpd);//直接调用线程对象,并执行其里面的call()方法,类似于执行Runnable接口中的run()方法
这样下来,我们的线程就执行完了
}
} |
|