Нужно ли выполнять все операции без повторения в ConcurrentHashMap (put(), remove() и т.д.) в блок synchronized(this)? Я понимаю, что все эти операции поточно-безопасны, так есть ли реальная польза/необходимость в этом? Используются только операции put() и remove().
protected final Map<String, String> mapDataStore = new ConcurrentHashMap<String, String>();
public void updateDataStore(final String key, final String value) {
...
synchronized (this) {
mapDataStore.put(key, value);
}
...
}