jjzjj

cachedToken

全部标签

java - 在 Java 同步块(synchronized block)中,写入是在所有字段上可见还是仅在同步变量上可见?

假设你有这段代码:privateStringcachedToken;privatefinalObjectlockObject=newObject();....retrieveToken(){synchronized(lockObject){if(cachedToken==null){cachedToken=goGetNewToken();}returncachedToken;}}对cachedToken的写入是否对锁定在lockObject上的所有线程可见? 最佳答案 是的。在lockObject上同步建立了一个HappensBef