Collections.SynchronizedSet(ICollection) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un conjunto sincronizado (seguro para subprocesos) respaldado por el conjunto especificado.
[Android.Runtime.Register("synchronizedSet", "(Ljava/util/Set;)Ljava/util/Set;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static System.Collections.ICollection SynchronizedSet (System.Collections.ICollection s);
[<Android.Runtime.Register("synchronizedSet", "(Ljava/util/Set;)Ljava/util/Set;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member SynchronizedSet : System.Collections.ICollection -> System.Collections.ICollection
Parámetros
el conjunto que se va a "encapsular" en un conjunto sincronizado.
Devoluciones
una vista sincronizada del conjunto especificado.
- Atributos
Comentarios
Devuelve un conjunto sincronizado (seguro para subprocesos) respaldado por el conjunto especificado. Para garantizar el acceso en serie, es fundamental que <el acceso seguro>a todo/<fuerte> al conjunto de respaldo se realice a través del conjunto devuelto.
Es imperativo que el usuario se sincronice manualmente en la colección devuelta al recorrerla a través Iterator
de , Spliterator
o Stream
:
Set s = Collections.synchronizedSet(new HashSet());
...
synchronized (s) {
Iterator i = s.iterator(); // Must be in the synchronized block
while (i.hasNext())
foo(i.next());
}
Si no se sigue este consejo, se puede producir un comportamiento no determinista.
El conjunto devuelto será serializable si el conjunto especificado es serializable.
Documentación de Java para java.util.Collections.synchronizedSet(java.util.Set<T>)
.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código Project y que se usan según los términos Creative Commons 2.5 Attribution License.