线程池的使用步骤:
1:使用线程池的工厂类Executors里面提供的静态方法newFixedThreadPool生产一个指定线程数量线程池。
2:创建一个类,实现Runnaable接口,重写run方法,指定线程任务。
3:调用ExecutorService中的submit,传递线程任务(实现类),开启线程,执行run方法。
4:调用ExecutorService中的shutdown销毁线程池(不建议执行)
public class ThreadPo {
public static void main(String[] args) {
// TODO Auto-generated method stub
ExecutorService tp = Executors.newFixedThreadPool(2);//创建一个指定线程数量的线程池
//3:调用ExecutorService中的submit,传递线程任务(实现类),开启线程,执行run方法。
tp.submit(new MyThreadPo());
tp.submit(new MyThreadPo());
//线程池会一直开启,当使用完了线程,自动把线程归还给线程池
//tp.shutdown();关闭线程,不推荐使用
}
}
public class MyThreadPo implements Runnable{
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+"创建了一个线程");
}
}
pool-1-thread-2创建了一个线程
pool-1-thread-1创建了一个线程