Maison  >  Article  >  Java  >  Comment rendre une collection thread-safe en Java ?

Comment rendre une collection thread-safe en Java ?

WBOY
WBOYavant
2023-08-31 14:53:06674parcourir

Comment rendre une collection thread-safe en Java ?

Classe Collections spécialisée dans les méthodes du package java.util qui gèrent les collections, qui fournissent diverses opérations supplémentaires impliquant des algorithmes polymorphes.

Cette classe fournit différentes variantes de la méthode synchroniséCollection() comme suit -

c)Cette méthode accepte n'importe quel objet de collection et renvoie une collection synchronisée (thread-safe) soutenue par la collection spécifiée. .
Sr.
2staticListsynchronizedList(ListList)

Cette méthode accepte un objet de l'interface List, renvoyant une liste synchronisée (thread-safe) soutenue par la liste spécifiée.

3staticmapsynchronizedMap(mapm)

Cette méthode accepte un objet de l'interface Map et renvoie une carte synchronisée (thread-safe) soutenue par la carte spécifiée.

4static SetsynchronizedSet(Set s)

Cette méthode accepte un objet de l'interface Set et renvoie une collection synchronisée (thread-safe) soutenue par la collection spécifiée.

5 static SortedMap synchroniséSortedMap(SortedMap m)

Cette méthode accepte un objet de l'interface Map et renvoie une carte triée synchronisée (thread-safe) soutenue par la carte triée spécifiée.

6staticSortedSetsynchronizedSortedSet(SortedSets)

Cette méthode accepte un objet de l'interface SynchronizedSortedSet et renvoie un ensemble trié synchronisé (thread-safe) par l'ensemble trié spécifié.

Exemple Démonstration en temps réel
import java.util.Collection;
import java.util.Collections;
import java.util.Vector;
public class CollectionReadOnly {
   public static void main(String[] args) {
      //Instantiating an ArrayList object
      Vector<String> vector = new Vector<String>();
      vector.add("JavaFx");
      vector.add("Java");
      vector.add("WebGL");
      vector.add("OpenCV");
      System.out.println(vector);
      Collection<String> synchronizedVector = Collections.synchronizedCollection(vector);
      System.out.println("Synchronized "+synchronizedVector);
      synchronizedVector.add("CoffeeScript");
   }
}
Sortie
[JavaFx, Java, WebGL, OpenCV]
Synchronized [JavaFx, Java, WebGL, OpenCV]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer