死锁的问题

死锁的问题

请问生产消费模型为什么会相互等待并产生死锁呢?不是一个生产一个消费吗?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
Tender10 2017-07-27 09:51:55

课程中老师也解释咯,因为生产和消费线程都处于一种等待状态,需要用notifyAll()去唤醒线程。

  • 提问者 慕侠0844227 #1
    我就是问为什么会相互等待???
    2017-07-27 10:09:42
  • 提问者 慕侠0844227 #2
    原理不是很清楚
    2017-07-27 10:10:05
  • Tender10 回复 提问者 慕侠0844227 #3
    wait()方法会让当前线程处于“等待(阻塞)状态”,“直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,当前线程被唤醒进入就绪状态。两个线程都使用了wait()方法,所以其实两个线程都只有等待状态,如果想继续执行,那就需去唤醒线程。
    2017-07-27 10:19:32
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师