gpt4 book ai didi

Java volatile 修饰符和同步块(synchronized block)

转载 作者:太空狗 更新时间:2023-10-29 22:54:51 24 4
gpt4 key购买 nike

由多个线程访问但仅在同步块(synchronized block)内的变量是否需要 volatile 修饰符?如果不是,为什么?

最佳答案

您不需要在 synchronized 中使用 volatile,synchronized 已经保证在一致使用时(每次访问时)本地变量缓存的正确行为。

volatile 适用于原始值,并且可以成为对原始类型进行原子访问的一个很好的快捷方式。请注意,从 1.4 开始,JDK 5 中 volatile 的行为发生了变化。

可以找到更多信息here

关于Java volatile 修饰符和同步块(synchronized block),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3214938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com