2024 Автор: Elizabeth Oswald | [email protected]. Последнее изменение: 2024-01-13 00:11
Что не так с использованием HashMap в многопоточной среде? … Это проблема, если несколько потоков добавляют к одному и тому же экземпляру HashMap без его синхронизации. Даже если только один поток модифицирует HashMap, а другие потоки читают эту же карту без синхронизации, вы столкнетесь с проблемами.
Можно ли использовать HashMap в многопоточной среде?
Вы должны убедиться, что все обновления HashMap завершены до создания экземпляров потоков, и поток, который создает карту, также разветвляет потоки. Потоки используют только HashMap в режиме только для чтения - либо получить, либо выполнить итерацию без удаления. Нет тем, обновляющих карту.
Почему HashMap не следует использовать в многопоточной среде, может ли это привести к бесконечному циклу?
Емкость HashMap по умолчанию равна 16, а коэффициент загрузки равен 0,75, что означает, что HashMap удвоит свою емкость, когда на карте появится 12-я пара ключ-значение (160,75=12). Когда 2 потока одновременно пытаются получить доступ к HashMap, вы можете столкнуться с бесконечным циклом. Поток 1 и поток 2 пытаются поместить 12-ю пару ключ-значение.
Является ли HashMap потокобезопасным?
HashMap не синхронизирован. Он не является потокобезопасным и не может использоваться несколькими потоками без надлежащего кода синхронизации, тогда как Hashtable синхронизируется.
Что лучше всего подходит для многопоточныхсреда?
Ответ: "ConcurrentHashMap"
Рекомендуемые:
Можем ли мы использовать неграмматические выражения?
В предписывающей грамматике неграмматический может относиться к группе слов или структуре предложения, которые не соответствуют «правильному» способу речи или письма, в соответствии со стандартами, установленными какой-то авторитет. Также называется грамматической ошибкой.
Во время лихорадки мы можем использовать переменный ток?
Если вы или ваш близкий заболели, вы можете использовать настройки сна на контроллере переменного тока, чтобы поддерживать постоянную температуру во всем доме. Если вы хотите поддерживать постоянную температуру, вы можете просто включить кондиционер на всю ночь.
Можем ли мы использовать все для детей?
Это персональный репеллент, отпугивающий комаров поблизости. Между прочим, это не продукт, предназначенный исключительно для детей или младенцев; им может пользоваться любой – даже взрослые. Безопасно ли использовать спрей от комаров для младенцев?
Можем ли мы использовать самый дружелюбный?
Вы можете использовать «дружественный» и «самый дружелюбный», а также «более/самый дружелюбный». Я носитель американского языка, а также преподаю английский как второй язык. Вы слышите обе формы, потому что обе формы верны. Вы можете сказать дружелюбнее или дружелюбнее.
Можем ли мы использовать сопрограммы в java?
Короткий ответ на этот вопрос: Да. В этой статье представлена реализация сопрограмм на чистом Java, доступная как Open Source на GitHub под лицензией Apache 2.0. Он использует функции, доступные начиная с Java 8, чтобы максимально упростить объявление и выполнение сопрограмм.