マルチスレッドプログラミング相談室 その8
■ このスレッドは過去ログ倉庫に格納されています
0679678
2011/09/15(木) 12:21:02.84int prevA = 0;
while (true) {
Vars v = Vars.instance;
if (v.a != prevA) {
doSomething(v);
prevA = v.a;
}
}
とすると、参照側の Vars.instance のアクセスがキャッシュされるから、
Vars.instance は volatile じゃないと駄目ってことでしょ。
Vars.instance を直接アクセスせずに getter を介してれば volatile は不要、かな?
■ このスレッドは過去ログ倉庫に格納されています