120个人买100张票,这100张票有5个售票窗口。
import java.util.ArrayList;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
* @Author echo
* @Date 2020/8/28 15:26
* @Description 买票,假设有5个卖票窗口,有100张票,120个人去买票(多线程)
*/
public class BuyTicket {
private static int ticket = 0;
private static int person = 120;
private static synchronized void buyTicket(int tickets,int person,String thraedName){
}
public static void main(String[] arg){
ExecutorService executorService = Executors.newFixedThreadPool(5);
for (int i = 1;i<=person;i++){
synchronized (BuyTicket.class){
ticket = ticket+1;
if (ticket > 100){//定义票卖完的条件
ticket = 101;
}
}
executorService.execute(new BuyThread(ticket,i));
}
}
}
class BuyThrea