public class App {
public static void main(String[] args) throws Exception {
sellTicket s = new sellTicket();
Thread t1 = new Thread(s);
Thread t2 = new Thread(s);
t1.setName("t1");
t2.setName("t2");
t1.start();
t2.start();
}
}
class sellTicket implements Runnable {
private int count = 1;
@Override
public void run() {
while (true) {
synchronized (this) {
this.notify();
if (count <= 100) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() + "购买了第" + count + "张票");
count++;
try {
this.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
} else {
break;
}
}
}
}
}
相关文章
- 10-24两个线程交替执行
- 10-24synchronized如何实现两个线程交替运行?看完你就懂了,列害dei
- 10-24信号量Semaphore实现两个线程的交替运行
- 10-24使用synchronized,wait,notifyAll 实现两个线程交替打印
- 10-24两个线程交替输出内容
- 10-24两个线程交替打印奇偶数
- 10-24java多线程编程(2)交替输出数字和字母
- 10-24(python版)创建两个线程,其中一个输出1-52,另外一个输出A-Z。输出格式要求:12A 34B 56C 78D 依次类推
- 10-242021必看!java两个线程交替打印数组
- 10-24Java并发 两个线程交替执行和死锁