Насколько мне известно, java.util.Hashtable
синхронизирует каждый метод в интерфейсе java.util.Map
, а Collections.synchronizedMap (hash_map)
возвращает объект-оболочку, содержащий синхронизированные методы, делегирующие вызовы фактическому hash_map
(поправьте меня, если я ошибаюсь).
У меня два вопроса:
Какая разница, чтобы синхронизировать каждый метод и иметь класс-оболочку? Какие сценарии выбрать один вместо другого?
Что происходит, когда мы выполняем Collections.synchronizedMap (hash_table)
? Будет ли это равносильно простому использованию обычного java.util.Hashtable
?