Sobes.tech
Junior — Middle

Kuidas rakendada mitme lõimega keskkonnas turvalist Map andmestruktuuri?

sobes.tech AI

Vastus AI-lt

Java-s saab turvalise mitme-kiire Map andmestruktuuri rakendada, kasutades java.util.concurrent paketist ConcurrentHashMap klassi. See tagab tõhusa andmete juurdepääsu ja muutmise mitme-kiire keskkonnas ilma välise sünkroniseerimiseta.

Kasutusnäide:

import java.util.concurrent.ConcurrentHashMap;

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

// Element lisamine
map.put("key", 1);

// Elementi saamine
Integer value = map.get("key");

// Turvaline väärtuse uuendamine
map.computeIfPresent("key", (k, v) -> v + 1);

Alternatiivina võib kasutada Collections.synchronizedMap(new HashMap<>()), kuid ConcurrentHashMap on tavaliselt eelistatud kõrge konkurentsivõime tõttu.