Я достаточно часто хочу получить доступ (и, возможно, добавить/удалить) элементы данного ConcurrentMap
, чтобы только один поток мог получить доступ к любому отдельному ключу за раз. Как лучше всего это сделать? Синхронизация самого ключа не работает: другие потоки могут получить доступ к тому же ключу через экземпляр equal
.
Достаточно, если ответ работает только с картами, созданными guava MapMaker
.
getKey(key)
, который возвращает экземпляр ключа. - person Sergey Aslanov   schedule 20.07.2011ConcurrentMap
во время поиска (что не совсем понятно для меня) или постфактум, как только значение было получено с карты? - person Drew Noakes   schedule 20.07.2011