【发布时间】:2012-12-07 02:30:45
【问题描述】:
我正在对 JVM 上的 STM 技术进行一些研究。看了一些文档,对 Multiverse 的实现有点疑惑。
根据the Multiverse FAQ,Multiverse 不支持检测。然而,在接受其创始人 Peter Veentjer 的采访时,他有以下话要说:
Multiverse 的使命之一是提供一个可以轻松与其他语言集成的 STM 实现,因此实际的 STM 实现只关心接口,因此您可以完全绕过插装。为了使它更容易,我提供了一个不依赖于检测的托管参考。这是 Jonas Boner 在基于 Scala 的 Akka 项目中使用的方法。
这到底是什么意思?它是否使用字节码检测?
最后,我一直在阅读另一个关于 ScalaSTM 的文档 here,其中清楚地表明 Multiverse 使用字节码检测。
因此,我想知道是否有人可以告诉我关于 Multiverse 的实际工作原理。 是类似于 ScalaSTM 的运行时库,还是使用 Instrumentation?
【问题讨论】:
-
感谢 Viktor,这似乎证实了这一点。也许以前的实现是基于检测的?
标签: java concurrency akka stm