關於FastHashMap問題

ineverstop發表於2007-07-30
其實這個問題是關於jarkata Common中Fast容器類在多執行緒環境下使用的問題。 在FastHashMap.java(其他還有FastArrayList等)的註釋文中,作者提到該class使用的兩種模式,即slow和fast,分別適用於初始化容器和只讀操作,但同時作者還提到:該class不保證在任何平臺都能正常使用,因為他可能導致所謂double-check idiom, 即內部的容器可能在未被完全初始化完畢的情況下被後來的執行緒所獲得,即內不狀態的不一致情況下會導致UncaughtedException。

但是我們知道,在struts框架中,FastHashMap容器是非常關鍵的儲存Actions的容器,那麼上面作者的擔心會出現嗎?

請教Banq對此問題的解釋。

相關文章