Collections.SynchronizedNavigableSet(INavigableSet) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Restituisce un set navigabile sincronizzato (thread-safe) supportato dal set navigabile specificato.
[Android.Runtime.Register("synchronizedNavigableSet", "(Ljava/util/NavigableSet;)Ljava/util/NavigableSet;", "", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static Java.Util.INavigableSet SynchronizedNavigableSet (Java.Util.INavigableSet s);
[<Android.Runtime.Register("synchronizedNavigableSet", "(Ljava/util/NavigableSet;)Ljava/util/NavigableSet;", "", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member SynchronizedNavigableSet : Java.Util.INavigableSet -> Java.Util.INavigableSet
Parametri
il set navigabile da "wrapped" in un set navigabile sincronizzato
Restituisce
una visualizzazione sincronizzata del set navigabile specificato
- Attributi
Commenti
Restituisce un set navigabile sincronizzato (thread-safe) supportato dal set navigabile specificato. Per garantire l'accesso seriale, è fondamentale che <>venga eseguito un accesso sicuro e completo<> al set navigabile sottostante tramite il set navigabile restituito (o le relative visualizzazioni).
È fondamentale che l'utente si sincronizzi manualmente sul set navigabile restituito durante l'attraversamento, o una delle relative subSet
visualizzazioni , headSet
o tailSet
tramite Iterator
o Spliterator
Stream
:
NavigableSet s = Collections.synchronizedNavigableSet(new TreeSet());
...
synchronized (s) {
Iterator i = s.iterator(); // Must be in the synchronized block
while (i.hasNext())
foo(i.next());
}
oppure:
NavigableSet s = Collections.synchronizedNavigableSet(new TreeSet());
NavigableSet s2 = s.headSet(foo, true);
...
synchronized (s) { // Note: s, not s2!!!
Iterator i = s2.iterator(); // Must be in the synchronized block
while (i.hasNext())
foo(i.next());
}
Se non si segue questo consiglio, è possibile che si verifichi un comportamento non deterministico.
Il set navigabile restituito sarà serializzabile se il set navigabile specificato è serializzabile.
Aggiunta nella versione 1.8.
Documentazione java per java.util.Collections.synchronizedNavigableSet(java.util.NavigableSet<T>)
.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.