sinkou
夺宝奇兵
2016-05-23 10:18

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

如题,面试时碰到这个问题,是怎样从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的问题?

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

0条回答