Java生产者消费者模型,消费者没法唤醒
大佬们帮忙看看这段代码,为啥消费者一直没办法唤醒啊
全部评论
你的代码我正常运行,这个Main对象传入到生产者和消费者我觉得会正常实现楼主的生产者消费者的做法。
2 回复 分享
发布于 2023-06-14 10:01 浙江
consumer中的第一个notifyall空打了一炮,后面t1一直在wait。占用着锁。然后其他线程也就一直堵塞在consumer方法?
点赞 回复 分享
发布于 2023-06-13 17:59 陕西
p2 notifyAll的时候,消费者获取不到锁不会被唤醒,p2 wait之后释放锁,阻塞的p1获取锁,如此循环了。你想要的效果可以用条件变量试试。不过这也不是生产消费者模型吧,你的buffer没有界诶。
点赞 回复 分享
发布于 2023-06-13 23:54 北京
单纯的consumer竞争不过两个producer,synchronized是非公平锁。你在producer方法的wait()后面sleep 1s看看。
点赞 回复 分享
发布于 2023-06-16 10:40 安徽

相关推荐

01-17 08:34
门头沟学院 Java
想找对象的单身狗在努力存钱:这工资不低了,再高点人家要招博士硕士的
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
牛客网
牛客企业服务