开发者社区> 问答> 正文

JVM是如何来保证可见性的呢?

JVM是如何来保证可见性的呢?

展开
收起
真的很搞笑 2021-10-28 21:41:51 447 0
1 条回答
写回答
取消 提交回答
  • 通过volatile关键字,对于共享资源的读操作会直接在主内存中进行,对于共享数据的写操作当然是先修改工作内存,但是修改后会主动刷新到主内存中。 通过synchronized关键字,synchronized只能保证同一时刻只有一个线程获得锁,然后执行同步方法,并且还会保证在锁释放之前,会将对变量的修改会主动刷新到主内存。 通过JUC提供的显式锁Lock也能保证,Lock的lock方法能够保证在同一时刻只有一个线程获得锁然后执行同步方法,并保证在锁释放之前(Lock的unlock)将修改的变量刷新到主内存。

    2021-10-28 21:42:12
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JVM实战 立即下载
JVM的GC 立即下载
基于JVM的脚本语言开发、运用实践 立即下载

相关实验场景

更多