package com.qf.pro2103.day19;
import java.lang.reflect.Executable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ThreadPoolDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建固定数量的线程池
ExecutorService es=Executors.newFixedThreadPool(4);
//创建动态数量的线程池
//ExecutorService es2=Executors.newCachedThreadPool();
//线程池里只有一个线程
//ExecutorService es=Executors.newSingleThreadExecutor();
//创建任务
Runnable runnable=new Runnable(){
private int ticket=50;
@Override
public void run() {
// TODO Auto-generated method stub
while(true){
synchronized (this) {
if(ticket<=0){
break;
}
System.out.println(Thread.currentThread().getName()+"买了"+ticket+"张票");
ticket--;
}
}
}
};
//到线程池种获取线程来执行售票任务
for(int i=0; i<5; i++){
es.submit(runnable);
}
}
}