实现的Ticket类
public class Ticket implements Runnable{
private int num = 100;
Object obj = new Object();
@Override
public void run() {
while (true) {
synchronized (obj) {
if (num >0 ) {
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName()+"*******sale*****"+num--);
}
}
}
}
}
这样就可以实现同步代码块,不会导致线程安全问题。
synchronized (obj){
}