public class RunnableTest implements Runnable {
// 定义票数
private int i = 100;
private Object obj = new Object();
// 重写run方法
@Override
public void run() {
//线程不安全,会出现相同的或者负数
//要加同步synchronized
synchronized (obj) {
while (true) {
if (i > 0) {
try {
//在指定的毫秒数内让当前正在执行的线程休眠
Thread.sleep(50);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() + "\t"
+ "在卖" + (i--) + "张票");
}
}
}
}
}
|