目的就是为了减少线程创建带来的开销,使得线程可用重复利用 原理:将N个线程对象创建好后存在一个容器中。 将每个线程 wait ,需要使用线程的时候, 可用通过notify来唤醒其中一个线程执行任务,执行任务后继续保持wait
使用示例:
public class Demo16 {
public static void main(String[] args) {
Runnable runnable=new Runnable() {
@Override
public void run() {
System.out.println(Thread.currentThread().getName());
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
ExecutorService service = Executors.newFixedThreadPool(3);
service.submit(runnable);
service.submit(runnable);
service.submit(runnable);
service.submit(runnable);
service.submit(runnable);
service.submit(runnable);
service.submit(runnable);
service.submit(runnable);
service.shutdown();
}
}
|