【问题标题】:Does The new java synchronization mechanism preserve the code optimization by JVM. [closed]新的 java 同步机制是否保留了 JVM 的代码优化。 [关闭]
【发布时间】:2014-08-09 04:10:28
【问题描述】:

正如我们所知,同步方法或同步块会保留 java 代码,而 JVM 不会优化代码。新的java同步机制是否如此。

【问题讨论】:

  • 什么新的java同步机制
  • 新的Java同步机制?你在说什么?
  • 我们不知道这些事情。 JVM 一直对同步进行某种优化,对于 1.7(2010 年发布),优化非常广泛。
  • 无论是否同步,所有代码都进行了优化。使用同步可以防止一些优化,例如代码重新排序,但这些是相当孤立的示例。注意:同步块内的代码可以重新排序,将代码从同步块内部移动到外部更难,但即使这样也可能发生。

标签: java multithreading synchronization


【解决方案1】:

如果我正确理解您的问题:是的,java.util.concurrent 原语建立了与同步后相同的发生后语义。

请参阅包说明中的"Memory Consitency Properties"

【讨论】:

  • 顺便说一句:“新”是相当相对的 :) 我认为它现在已经超过 10 年了。
猜你喜欢
  • 2013-08-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-05
相关资源
最近更新 更多