Használhatjuk a hashmapot többszálú környezetben?

Tartalomjegyzék:

Használhatjuk a hashmapot többszálú környezetben?
Használhatjuk a hashmapot többszálú környezetben?
Anonim

Mi a baj a HashMap használatával többszálú környezetben? … Problémát jelent, ha több szál is hozzáadódik ugyanahhoz a HashMap-példányhoz anélkül, hogy szinkronizálva lenne. Még ha csak 1 szál módosít egy HashMap-et, és más szálak ugyanarról a térképről olvasnak szinkronizálás nélkül, akkor is problémákba ütközhet.

Használhat HashMap-et többszálú környezetben?

Győződjön meg arról, hogy: A HashMap összes frissítése befejeződött, mielőtt a szálak példányosodnának, és a térképet létrehozó szál is elágazná a szálakat. A szálak csak a HashMap-et használják csak olvasható módban – vagy get vagy iterációt eltávolítás nélkül. Nincsenek a térképet frissítő szálak.

Miért nem szabad a HashMap-et használni többszálú környezetben, az is okozhat végtelen ciklust?

A HashMap alapértelmezett kapacitása 16, a terhelési tényező pedig 0,75, ami azt jelenti, hogy a HashMap megduplázza kapacitását, amikor a 12. kulcs-érték pár belép a térképbe (160,75=12). Amikor 2 szál egyszerre próbál hozzáférni a HashMaphez, akkor végtelen ciklusba ütközhet. Az 1. szál és a 2. szál megpróbálja beállítani a 12. kulcs-érték párt.

Biztonságos a HashMap szál?

A HashMap nincs szinkronizálva. Nem szálbiztos, és nem osztható meg sok szál között megfelelő szinkronizálási kód nélkül, míg a Hashtable szinkronizált.

Mi a legalkalmasabb a többszálúhozkörnyezet?

A válasz: "ConcurrentHashMap"

Ajánlott:

Érdekes cikkek
Mekkora a longmeadow herefordshire?
Olvass tovább

Mekkora a longmeadow herefordshire?

A 2 hektáros terület több különböző területre oszlik, beleértve a Cottage Gardent, a színes lázadást, ami az Ékszerkert, az iszlám ihletésű Paradise Gardent és a veteményeskert. Mekkora a Longmeadow kert? Monty és felesége, Sarah 1991 októberében vásárolta meg a vidéki ingatlant azzal a nagy reménységgel, hogy helyreállítják a kertet.

Ki a Trump kegyelem?
Olvass tovább

Ki a Trump kegyelem?

Két volt katonatiszt, akinek Trump megkegyelmezett, megjelent az elnökkel együtt 2019-ben a kampányrendezvényeken. Trump kegyelmet adott ki hét bűncselekményekért elítélt republikánus kongresszusi képviselőnek: Chris Collinsnak, Duncan D. Hunternek, Steve Stockmannek, Rick Renzinek, Robin Hayesnek.

Gumiszalag szigetelő vagy vezető?
Olvass tovább

Gumiszalag szigetelő vagy vezető?

A fémek általában nagyon jó vezetők, vagyis könnyen engedik az áramot. Azokat az anyagokat, amelyek nem engedik át könnyen az áramot, szigetelőknek nevezzük. A legtöbb nemfémes anyag, például a műanyag, a fa és a gumi szigetelő. A gumi jó szigetelő?