标签: java multithreading concurrency
我理解volatile应该在类字段上使用,以防止JVM缓存该值,以便在读取时始终是最新值。
volatile
如果我的理解是正确的,那么是否意味着我们应该在多线程线程安全环境中使用volatile定义所有字段?什么时候不必将字段定义为volatile?
答案 0 :(得分:0)
如果没有其他机制提供同步(例如volatile s),多个线程将无法访问该字段,则无需定义字段lock。
lock
如果某个类的每个成员都可以这样访问,那么每个字段都应该如此标记。