Partager via


Collections.SynchronizedMap(IDictionary) Méthode

Définition

Retourne une carte synchronisée (thread-safe) sauvegardée par la carte spécifiée.

[Android.Runtime.Register("synchronizedMap", "(Ljava/util/Map;)Ljava/util/Map;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public static System.Collections.IDictionary SynchronizedMap (System.Collections.IDictionary m);
[<Android.Runtime.Register("synchronizedMap", "(Ljava/util/Map;)Ljava/util/Map;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
static member SynchronizedMap : System.Collections.IDictionary -> System.Collections.IDictionary

Paramètres

m
IDictionary

carte à « wrapper » dans une carte synchronisée.

Retours

vue synchronisée de la carte spécifiée.

Attributs

Remarques

Retourne une carte synchronisée (thread-safe) sauvegardée par la carte spécifiée. Pour garantir l’accès en série, il est essentiel que <l’accès fort> à la< carte de stockage soit renforcé>par le biais de la carte retournée.

Il est impératif que l’utilisateur se synchronise manuellement sur la carte retournée lors de la traversée de l’une de ses vues de collection via Iterator, Spliterator ou Stream:

Map m = Collections.synchronizedMap(new HashMap());
                 ...
             Set s = m.keySet();  // Needn't be in synchronized block
                 ...
             synchronized (m) {  // Synchronizing on m, not s!
                 Iterator i = s.iterator(); // Must be in synchronized block
                 while (i.hasNext())
                     foo(i.next());
             }

Le fait de ne pas suivre ces conseils peut entraîner un comportement non déterministe.

La carte retournée est sérialisable si la carte spécifiée est sérialisable.

Documentation Java pour java.util.Collections.synchronizedMap(java.util.Map<K, V>).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à