Java ConcurrentMap interfész

Ebben az oktatóanyagban megismerhetjük a Java ConcurrentMap felületet és annak módszereit.

A ConcurrentMapJava gyűjtemények keretrendszere egy szálbiztos térképet biztosít. Vagyis több szál egyszerre férhet hozzá a térképhez anélkül, hogy befolyásolná a bejegyzések konzisztenciáját a térképen.

ConcurrentMap szinkronizált térképként ismert.

Kiterjeszti a Map felületet.

A ConcurrentMap megvalósító osztály

Mivel ConcurrentMapez egy felület, nem hozhatunk létre belőle objektumokat.

A ConcurrentMapfelület funkcionalitásának használatához azt az osztályt kell használnunk, ConcurrentHashMapamely megvalósítja azt.

Hogyan kell használni a ConcurrentMap-ot?

A használatához először ConcurrentMapimportálnunk kell a java.util.concurrent.ConcurrentMapcsomagot. A csomag importálása után a következőképpen készíthetünk egyidejű térképet.

 // ConcurrentMap implementation by ConcurrentHashMap CocurrentMap numbers = new ConcurrentHashMap(); 

A fenti kódban létrehoztunk egy párhuzamos térképet, amelynek neve szám volt.

Itt,

  • Kulcs - egyedi azonosító, amelyet a térkép minden elemének (értékének) társításához használnak
  • Érték - kulcsok által társított elemek a térképen

A ConcurrentMap módszerei

Az ConcurrentMapinterfész az interfész összes módszerét tartalmazza Map. Ez azért van, mert Mapa felület szuper ConcurrentMapfelülete.

Mindezen módszerek mellett itt vannak az ConcurrentMapinterfészre jellemző módszerek .

  • putIfAbsent () - Beszúrja a megadott kulcsot / értéket a térképbe, ha a megadott kulcs még nincs társítva semmilyen értékhez.
  • compute () - Beírást (kulcs / érték leképezést) számol a megadott kulcshoz és annak korábban leképezett értékéhez.
  • computeIfAbsent () - A megadott függvény használatával kiszámítja az értéket a megadott kulcshoz, ha a kulcs még nincs hozzárendelve értékkel.
  • computeIfPresent () - Új bejegyzést (kulcs / érték leképezés) számol a megadott kulcshoz, ha a kulcs már hozzárendelve van a megadott értékhez.
  • forEach () - Hozzáférés a térkép összes bejegyzéséhez és a megadott műveletek végrehajtása.
  • egyesítés () - Egyesíti az új megadott értéket a megadott kulcs régi értékével, ha a kulcs már hozzárendelve van egy bizonyos értékhez. Ha a kulcs még nincs leképezve, akkor a módszer egyszerűen társítja a megadott értéket a kulcsunkhoz.

További információkért látogasson el a Java ConcurrentMap oldalra (hivatalos Java dokumentáció).

A ConcurrentMap megvalósítása a ConcurrentHashMap alkalmazásban

 import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ConcurrentHashMap; class Main ( public static void main(String() args) ( // Creating ConcurrentMap using ConcurrentHashMap ConcurrentMap numbers = new ConcurrentHashMap(); // Insert elements to map numbers.put("Two", 2); numbers.put("One", 1); numbers.put("Three", 3); System.out.println("ConcurrentMap: " + numbers); // Access the value of specified key int value = numbers.get("One"); System.out.println("Accessed Value: " + value); // Remove the value of specified key int removedValue = numbers.remove("Two"); System.out.println("Removed Value: " + removedValue); ) ) 

Kimenet

 ConcurrentMap: (egy = 1, kettő = 2, három = 3) Hozzáférési érték: 1 eltávolított érték: 2 

További információért ConcurrentHashMaplátogasson el a Java ConcurrentHashMap oldalra.

érdekes cikkek...