object Users {
val userCountByAgeMap = readFromFile(); // read from file returns immutable map
}
正如在上面的scala示例中,用戶將是Singleton對象並且userCountByAgeMap將被懶惰地初始化。在scala對象中,是不可變的val線程安全嗎?
那麼這個初始化是原子嗎?即一個且只有一個線程將能夠初始化它。
假設userCountByAgeMap由線程A初始化,這將是可見的主題B.
如果初始化是不是不能保證原子/內存的知名度,將使得userCountByAgeMap變懶VAL解決這個問題?