jvm层次理解volatile, synchronized, join(面试题),求解

夺宝奇兵 2016-05-23 05:29:08
如题,面试时碰到这个问题,是怎样从jvm层次理解volatile, synchronized, join

《深入理解Java虚拟机》12.3.3 对于volatile型变量的特殊规则介绍了volatile,指令addl $0x0, (%esp)使得本CPU的Cache写入内存,该写入动作也会引起别的CPU或者别的内核无效化其Cache,这让volatile变量的修改对其他CPU立即可见。

《实战JAVA虚拟机》11.2.10 同步控制介绍了synchronized,使用monitorenter, monitorexit来完成临界区的进入和离开操作

join就没有什么书籍介绍了,只是在《The java Language Specification(java SE 7 Edition)》17.2 Wait Sets and Notification有句话是这么说的
Thread class's methods for sleeping and joining other threads have properties derived from those of wait and notification actions.

有没有人帮忙看看,怎样回答这个join的问题

...全文
417 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,626

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧