JVMの話。長かった『Java並行処理』もこれで終わり。長かったー!後半、明らかに手を抜いたなぁ。 ちょっと復習も必要なんだけど、取り敢えず十六章。 安全な遅延初期化のテクニック 良くあるダブルチェックロッキングアンチパターンは、最初に < if (variable == null) return variable; > があるけど、variableが安全にコンストラクトされているとは限らないので使わない方が良いよね、って話。 遅延初期化にも色々方法があるけど・・・。 まず、駄目な例。 // 素朴なパターン public static class UnsafeLazyInitialization { private static UnsafeLazyInitialization instance; public static UnsafeLazyInitialization getInst