★★Java質問・相談スレッド133★★
■ このスレッドは過去ログ倉庫に格納されています
0655デフォルトの名無しさん
2009/11/08(日) 22:16:27Double-Checked LockingはJavaではちゃんと動かない、という話は理解しているのですが、
例えば、以下のようなコードならば意図どおりに動作するでしょうか?
class X {
private Y instance = null;
void method() {
if (this.instance == null) {
synchronized (this) {
Y __instance = Y.getSingleton(); // インスタンス化されてるけど初期化されてないインスタンス
if (this.instance == null) {
__instance.init(); // Y固有の初期化処理
this.instance = _instance;
}
}
}
}
}
■ このスレッドは過去ログ倉庫に格納されています