首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
常在面试的牛客人士
获赞
780
粉丝
53
关注
5
看过 TA
3508
男
门头沟学院
2024
Java
IP属地:广东
WA了?不会吧!QAQ
私信
关注
拉黑
举报
举报
确定要拉黑常在面试的牛客人士吗?
发布(46)
刷题
常在面试的牛客人士
2020-07-28 19:43
已编辑
门头沟学院 计算机类
为什么用while可以避免虚假唤醒问题呢?
就是生产者消费者的一个问题,在多线程的情况下为什么用if会产生一个虚假唤醒的问题,因为使用了notifyAll,会唤醒所有的线程,但是为什么用while代替if就可以了呢?如果是多核多线程的情况下,是可以并行的,那么假设有两个线程同时执行到了while语句,然后都可以跳出循环,那么不还是会引发多线程的一个问题吗,但是官方说用while是没问题的,我用while的确也发现没问题,但是我不太理解为什么用while就可以。哪位大哥小姐姐帮助下弱小的我。
0
点赞
评论
收藏
转发
1
2
3
4
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务