第 3 节 线程的同步与死锁
同步问题的引出
package com.alpha;
class MyThread implements Runnable {
private int ticket = 5; // 一共有5张票
@Override
public void run() {
for (int i = 0; i < 20; i ++) {
if (this.ticket > 0) {
System.out.println(Thread.currentThread().getName() + "卖票,ticket = " + this.ticket --);
}
}
}
}
public class MainClass { // 主类
public static void main(String[] args) throws Exception {
MyThread mt = new MyThread();
new Thread(mt, "票贩子A").start();
new Thread(mt, "票贩子B").start();
new Thread(mt, "票贩子C").start();
new Thread(mt, "票贩子D").start();
}
}同步操作
死锁
总结
最后更新于