Guava MapMaker (). WeakKeys (). MakeMap () vs WeakHashMap

У нас есть сервер Scala, который получает дерево узлов с использованием протокольных буферов через сокет, и нам нужно прикрепить дополнительные данные к каждому узлу.

В a однопоточный контекст, и когда и дерево узлов, и связанные данные будут иметь свои сильные ссылки одновременно (из-за выхода за пределы области видимости), есть ли причина использовать MapMaker Google Guava со weakKeys () вместо WeakHashMap? Похоже, что с MapMaker платят за синхронизированный доступ, который в данном случае не нужен.

Кроме того, было бы полезно, если бы MapMaker предоставил доступ к настройкам эквивалентности, чтобы можно было выбрать эталонное равенство, но не заботиться о слабых или мягких ссылках.

6
задан javamonkey79 17 November 2010 в 05:30
поделиться