Collections.SynchronizedSortedMap(IDictionary) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna um mapa classificado sincronizado (thread-safe) apoiado pelo mapa classificado especificado.
[Android.Runtime.Register("synchronizedSortedMap", "(Ljava/util/SortedMap;)Ljava/util/SortedMap;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public static System.Collections.IDictionary SynchronizedSortedMap(System.Collections.IDictionary m);
[<Android.Runtime.Register("synchronizedSortedMap", "(Ljava/util/SortedMap;)Ljava/util/SortedMap;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
static member SynchronizedSortedMap : System.Collections.IDictionary -> System.Collections.IDictionary
Parâmetros
o mapa classificado a ser "encapsulado" em um mapa classificado sincronizado.
Retornos
uma exibição sincronizada do mapa classificado especificado.
- Atributos
Comentários
Retorna um mapa classificado sincronizado (thread-safe) apoiado pelo mapa classificado especificado. Para garantir o acesso serial, é fundamental que <o acesso forte>a todo</forte> ao mapa classificado de suporte seja realizado por meio do mapa classificado retornado (ou suas exibições).
É imprescindível que o usuário sincronize manualmente no mapa classificado retornado ao percorrer qualquer uma de suas exibições de coleção ou as exibições de coleções de qualquer uma de suas exibições headMap ou tailMap exibições por meio Iteratorde , Spliterator ou Stream:subMap
SortedMap m = Collections.synchronizedSortedMap(new TreeMap());
...
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());
}
or:
SortedMap m = Collections.synchronizedSortedMap(new TreeMap());
SortedMap m2 = m.subMap(foo, bar);
...
Set s2 = m2.keySet(); // Needn't be in synchronized block
...
synchronized (m) { // Synchronizing on m, not m2 or s2!
Iterator i = s2.iterator(); // Must be in synchronized block
while (i.hasNext())
foo(i.next());
}
A falha ao seguir este conselho pode resultar em um comportamento não determinístico.
O mapa classificado retornado será serializável se o mapa classificado especificado for serializável.
Java documentação para java.util.Collections.synchronizedSortedMap(java.util.SortedMap<K, V>).
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.