0
考虑下面的情况,它说如果str
是易失性的,它意味着任何访问str
的线程的任何更新都将直接在主堆栈上而不是本地线程缓存上更新。挥发性物体工作
class A{
volatile String str;
volatile B b=new B();
}
class B{
int a;
C c;
}
对于b
易失性对象,场景如何工作?
我读了很少的链接说只有引用是易失性的,而不是对象本身的属性,这是什么意思,有人能帮我一些例子,因为我觉得有点难以理解。
如果引用是同步的,那么它将如何帮助,它有什么用处呢?
如果'thread 1'重新赋值'b' ref,'thread 2'是否可以读取'foo'的最新值?例如'thread 1':'{a.b.setFoo(“Hello”); a.b = a.b; }'then'thread 2':'{a.b.getFoo(); }' –
对此[answer](https://stackoverflow.com/a/4614433/1812434)的评论讨论同样的一点,但不清楚(对我:)) –