推 jinmin88:用synchronized感覺才不需要用lock 06/17 14:34
→ iterator:這是 "double-checked locking is broken" 的問題 06/17 20:03
→ iterator:在_inst=new ...()的同時,if(_inst==null)可能會錯誤判斷 06/17 20:06
→ iterator:volatile是拿來避免這個問題的 06/17 20:08
→ iterator:不過, 在 .NET 裡面, 因為 memory model 設計, 06/17 20:09
→ iterator:所以不會遇到這樣的情況產生 06/17 20:09
→ iterator:但是, 在 ECMA 標準或是其它 implement 下, 06/17 20:10
→ iterator:不同CPU(x86/x64/IA-64)差異,就不能保證不會有這個問題 06/17 20:11
→ ghostx2:我在MSDN Magazine有看到類似記憶體架構, 無奈實力不夠 06/17 22:33
→ ghostx2:尚不能理解文章內容, 看到iterator講解後就比較淺顯易懂 06/17 22:34