コントローラに注入されるシングルトンスプリングサービス内でConcurentHashMapのスレッドセーフな使用法を実装しようとしています。
@Service
public MyService{
final ConcurrentMap<String, AtomicInteger> myMap = new ConcurrentHashMap<String, AtomicInteger>(10) {
{/* initialize the ten key/values */
}
};
public int add(String key) {
return myMap.get(key).incrementAndGet();
}
// accessed via ajax loop (and controller), if value changes update display
public int getCount(String key) {
return myMap.get(key).get();
}
}
ハッシュマップへのアクセスをスレッドセーフにするためのより良い方法はありますか?クラスター環境で機能するようにこれをどのように適応させることができますか?それは私の他の質問へのフォローです。