作为假设的JDK 10的一部分,提出了JEP 312:线程本地握手。
我试图理解它的描述,但我仍然不确定我正确地理解了这个想法。
这实质上是尝试重新启用类似于已弃用的Thread.destroy()的东西吗?
这个接口在理论上会是什么样子?
我试图理解它的描述,但我仍然不确定我正确地理解了这个想法。
这实质上是尝试重新启用类似于已弃用的Thread.destroy()的东西吗?
这个接口在理论上会是什么样子?
在研究JEP: 312线程本地握手并阅读了这个问题的出色评论后,以下是一个快速总结。
它是一种性能增强,不能直接由开发人员使用:
提出了一种“握手”机制作为Hotspot safepoints
机制的优化。
前者允许在安全点中的线程在执行监管操作(握手回调)后立即继续执行。
后者强制所有线程在安全点上阻塞,以便进行关键操作(如YoungGen GC或Full GC的STW部分)。只有在关键操作完成执行后才会释放线程。
OP评论员:
JimmyB,Andy Turner,skomisa,Alexander Bollaert
参考文献: