【初心者】Java質問・相談スレ14【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0225デフォルトの名無しさん
NGNGReflectionは全く関係ない。
移植性のあるコードで(*)と(**)が必要となる理由は、
有名な"Double-Checked Locking is Broken"での話と同じ。
http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html
を一通り読んだ後、
http://java.sun.com/docs/books/jls/second_edition/html/memory.doc.html#28325
辺りとにらめっこしながらコードを読めば、問題点がわかるだろう。
また、pentiumなどで(*)と(**)が不要となる理由は、
"Cache Coherency"とかのキーワードで検索してみるとよろし。
■ このスレッドは過去ログ倉庫に格納されています