java多线程的卖票问题

java多线程的卖票问题

首先,定义的锁(lock)不对,必须是同一个锁,像你这样用this,new多少个MyThread就有多少个锁,违反了线程的同步机制;其次,你如果想要呈现多线程的竞争,不可以在run方法里让一个线程一直运行而不释放锁,应该使用wait()
Python330
java线程同步问题,买票

java线程同步问题,买票

while(ticket&gt0){&lt----sale()}如果在箭头的位置第一个线程切换,并且这个时候ticket=1那么第二个线程也会通过,此时ticket=1,恰巧第二个线程又切换到第三个线程,ticket=1.那
Python110