我被教导说,并发条件并不一定需要在循环中编写,而不是oracle doc所说的

 lady张昕彤 发布于 2023-02-11 16:44

所以基本上我正在学习更严肃的并发性(研究事情是如何工作的,而不仅仅是在需要时使用随机的东西).

当我向他询问这个问题时,我的专业人员告诉我,他和他的同事们无法重现虚假的醒来,并认为该行是一条未被删除的旧行(就像,它就在那里,java得到了"更好的",它不再需要,线路仍在那里",而事实并非如此.

链接:

http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/locks/Condition.html

它位于以下点之下:

实施注意事项

在他看来,这种情况看起来像这样:

lock.lock()
if (p>q) {
    lock.newCondition().await
}

完全没问题,因为他说虚假唤醒不会发生,所以不需要循环:

lock.lock()
while (p>q) {
    lock.newCondition().await
}

我更有可能把事情和理解文件和我的老师的方式混合在一起,但是我确实花了一些时间试图理解为什么每件事,并且不能带有我自己的"答案",我要么相信一个或另一个(不重要,它是纯粹的我想要学习).

我的老师确实花时间告诉我们如何解释Java中的并发性是非常愚蠢的,但我也没有选择它,所以就是这样.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有