Collections.SynchronizedNavigableMap(INavigableMap) 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 navegável sincronizado (thread-safe) apoiado pelo mapa navegável especificado.
[Android.Runtime.Register("synchronizedNavigableMap", "(Ljava/util/NavigableMap;)Ljava/util/NavigableMap;", "", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public static Java.Util.INavigableMap SynchronizedNavigableMap(Java.Util.INavigableMap m);
[<Android.Runtime.Register("synchronizedNavigableMap", "(Ljava/util/NavigableMap;)Ljava/util/NavigableMap;", "", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
static member SynchronizedNavigableMap : Java.Util.INavigableMap -> Java.Util.INavigableMap
Parâmetros
o mapa navegável a ser "encapsulado" em um mapa navegável sincronizado
Retornos
uma exibição sincronizada do mapa navegável especificado.
- Atributos
Comentários
Retorna um mapa navegável sincronizado (thread-safe) apoiado pelo mapa navegável especificado. Para garantir o acesso serial, é fundamental que <o acesso forte>e forte<> ao mapa navegável de suporte seja realizado por meio do mapa navegável retornado (ou suas exibições).
É imprescindível que o usuário sincronize manualmente no mapa navegável retornado ao atravessar 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
NavigableMap m = Collections.synchronizedNavigableMap(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:
NavigableMap m = Collections.synchronizedNavigableMap(new TreeMap());
NavigableMap m2 = m.subMap(foo, true, bar, false);
...
Set s2 = m2.keySet(); // Needn't be in synchronized block
...
synchronized (m) { // Synchronizing on m, not m2 or s2!
Iterator i = s.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 navegável retornado será serializável se o mapa navegável especificado for serializável.
Adicionado em 1.8.
Java documentação para java.util.Collections.synchronizedNavigableMap(java.util.NavigableMap<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.