package XianCheng;
public class RunnableS implements Runnable {
private Integer i = 100;
private Object obj = new Object();
private int aa = 0;
@Override
public void run() {
while (true) {
if (aa % 2 == 0) {
synchronized (obj) {
if (i > 0) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() + "卖第" + i + "张票" + aa);
i--;
}
}
} else {
synchronized (obj) {
if (i > 0) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() + "卖第" + i + "张票" + "else");
i--;
}
}
} aa++;
}
}
}
public static void main(String[] args) {
RunnableS rr = new RunnableS();
Thread t1 = new Thread(rr,"1号窗口");
Thread t2 = new Thread(rr,"2号窗口");
Thread t3 = new Thread(rr,"3号窗口");
Thread t5 = new Thread(rr,"4号");
t1.start();
t2.start();
t3.start();
t5.start();