cpdyj0
V2EX  ›  Java

一个关于 Java 内存可见性的问题

  •  
  •   cpdyj0 ·
    cpdyj · Mar 8, 2019 · 2291 views
    This topic created in 2651 days ago, the information mentioned may be changed or developed.

    一个 object 同一个时间只会被一个线程访问,不同时间会被不同线程访问,object 内部成员不加锁和volatile,访问时也不加锁,是否会出现第二个线程看不到第一个线程修改后的值这种情况?

    billlee
        1
    billlee  
       Mar 9, 2019   ❤️ 1
    dengtongcai
        2
    dengtongcai  
       Mar 9, 2019
    一个 object 同一个时间只会被一个线程访问。
    我寻思你这个就是一个应用里面的 static 变量被多次访问呗。。不涉及并发
    cpdyj0
        3
    cpdyj0  
    OP
       Mar 9, 2019
    @dengtongcai 不是 static 的,全部通过消息队列传递,,不过应该还是会受影响的,解决办法就是保证一个 object 只被一个 thread 访问呗?
    sabel
        4
    sabel  
       Mar 9, 2019
    不同步的话 JMM 不会保证多线程情况下的线程之间的可见性
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4077 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 10:14 · PVG 18:14 · LAX 03:14 · JFK 06:14
    ♥ Do have faith in what you're doing.