Я пишу приложение, которое вернет пользователю HashMap. Пользователь получит ссылку на этот MAP. На бэкэнд я буду запускать некоторые потоки, которые будут обновлять карту.
Что я сделал до сих пор?
Я сделал все обратные потоки, поэтому обмениваюсь общим каналом для обновления MAP. Поэтому в бэкэнд я уверен, что одновременная операция записи не будет проблемой.
Проблемы, с которыми я сталкиваюсь
- Если пользователь пытается обновить MAP, и одновременно MAP обновляется на сервере → Проблема параллельной записи.
- Если использование пытается прочитать что-то из MAP, и одновременно MAP обновляется в режиме backend → одновременная работа READ и WRITE Operation.
До сих пор я не сталкивался с такой проблемой, но я боюсь, что в будущем могу столкнуться. Пожалуйста, дайте sugesstions.
Я использую ConcurrentHashMap<String, String>.