实验报告七
实验任务详情:
完成火车站售票程序的模拟。
要求:
(1)总票数1000张;
(2)10个窗口同时开始卖票;
(3)卖票过程延时1秒钟;
(4)不能出现一票多卖或卖出负数号票的情况。
实验代码
package Fuck;
class MyThread implements Runnable{
private int ticket=100;
private boolean flag=true;
public void run() {
while(flag) {
try {
Thread.sleep(50);
}catch(Exception e) {
e.printStackTrace();
}
sale();
if(flag==false) {
System.out.println(Thread.currentThread().getName()+"窗口票已全部卖完");
}
}
}
public synchronized void sale() {
if(ticket==0) {
flag=false;
return;
}
System.out.println(Thread.currentThread().getName()+"窗口卖票一张,余票为"+ticket--);
}
}
public class ThreadNameDemo {
public static void main(String args[]) {
MyThread m=new MyThread();
for(int i=1;i<=10;i++) {
new Thread(m,i+"窗口").start();
}
}
}
实验截图
学习总结:哦豁原来书上好像有额。