黑马程序员技术交流社区

标题: 创建线程的第三种方法----线程池 [打印本页]

作者: q19871127    时间: 2015-6-14 22:15
标题: 创建线程的第三种方法----线程池
实现线程的方式3:
  1.自定义线程类,实现Callable接口;
  2.重写里面的call()方法;
  3.启动线程:
                  1).获取一个线程池;
                  2).调用线程池submit()方法执行;
创建类:
  1. public class MyCallable implements Callable {
  2.         @Override
  3.         public Object call() throws Exception {
  4. System.out.println("我是线程");
  5.                 return null;
  6.         }
  7. }
复制代码
下面是main方法:
  1. public static void main(String[] args) {
  2.                 //1.获取一个线程池
  3.                 ExecutorService service = Executors.newFixedThreadPool(2);
  4.                 //2.调用submit()方法启动线程
  5.                 service.submit(new MyCallable());
  6.                 //关闭线程池
  7.                 service.shutdown();
  8.         }
复制代码

线程池的优点:
1).它可以将一些线程对象缓存起来;
2).当再次需要这些线程时,直接从线程池中取出,并执行即可。不需要重新构造;
3).这样的话,对于一些"构造很复杂"的线程用起来就非常的方便;







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2