Sobes.tech
Junior — Middle

Kako implementirati thread-safe strukturu podataka Map u višestrukom okruženju?

sobes.tech АИ

Одговор од АИ

Za implementaciju sigurnosne strukture podataka Map u Java, možete koristiti klasu ConcurrentHashMap iz paketa java.util.concurrent. Ona obezbeđuje efikasan pristup i modifikaciju podataka u višestrukom okruženju bez potrebe za spoljašnjom sinhronizacijom.

Primer upotrebe:

import java.util.concurrent.ConcurrentHashMap;

ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();

// Dodavanje elementa
map.put("key", 1);

// Dobijanje elementa
Integer value = map.get("key");

// Sigurno ažuriranje vrednosti
map.computeIfPresent("key", (k, v) -> v + 1);

Alternativno, možete koristiti Collections.synchronizedMap(new HashMap<>()), ali je ConcurrentHashMap obično preferiran za visoku konkurentnost.