HashMap и параллелизм - разные ключи

Скажем, у меня есть хэш-карта и несколько потоков. Если у меня есть синхронизированный метод, который добавляет к хеш-карте, как я могу сделать так, чтобы два разных потока могли одновременно (одновременно) помещать разные ключи в хеш-карту?

Моя текущая реализация - это синхронизированный метод. Позволит ли это двум разным потокам одновременно помещать два разных ключа в хэш-карту?

Я использую обычную хеш-карту, а не параллельную хеш-карту Java. Мне не разрешено использовать одновременную хэш-карту.

РЕДАКТИРОВАТЬ: Я думаю, что нашел решение! Я думаю, что, возможно, неправильно написал этот пост. Предположим, что хэш-карта инициализируется как Integer в качестве его ключа и LinkedList в качестве его значения. Чтобы поставить совершенно новый ключ, я понимаю, что вся хеш-карта должна быть синхронизирована (т.е. заблокирована). Однако, если я пытаюсь добавить еще одну строку в соответствующий LinkedList уже содержащегося ключа, я могу просто синхронизировать метод get хэш-карты. Я думаю, что это позволит нескольким потокам одновременно (одновременно) добавлять в LinkedLists разные, уже содержащиеся ключи. Пожалуйста, дайте мне знать, если я ошибаюсь.

Вот конкретный пример. У меня есть hashMap хэш-карты, которая использует Integer в качестве ключа и LinkedList в качестве значения. Ключи 5 и 10 уже находятся в хэш-карте. Ключ 5 содержит LinkedList Джои, Джо, Керри. Ключ 10 содержит LinkedList Джерри, Мэри, Тим. У меня есть две темы T1 и T2. t1 хочет добавить Мо в LinkedList, соответствующий ключу 5. t2 хочет добавить Гарри в LinkedList, соответствующий ключу 10. Оба будут одновременно добавлены в хеш-карту, поскольку значение хеш-карты только заблокировано.

Ответы на вопрос(4)

Ваш ответ на вопрос