Compartir a través de


Collections.SynchronizedCollection(ICollection) Método

Definición

Devuelve una colección sincronizada (segura para subprocesos) respaldada por la colección especificada.

[Android.Runtime.Register("synchronizedCollection", "(Ljava/util/Collection;)Ljava/util/Collection;", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static System.Collections.ICollection SynchronizedCollection (System.Collections.ICollection c);
[<Android.Runtime.Register("synchronizedCollection", "(Ljava/util/Collection;)Ljava/util/Collection;", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member SynchronizedCollection : System.Collections.ICollection -> System.Collections.ICollection

Parámetros

c
ICollection

la colección que se va a "encapsular" en una colección sincronizada.

Devoluciones

una vista sincronizada de la colección especificada.

Atributos

Comentarios

Devuelve una colección sincronizada (segura para subprocesos) respaldada por la colección especificada. Para garantizar el acceso en serie, es fundamental que <el acceso seguro>> a la< colección de respaldo se realice a través de la recopilación devuelta.

Es imperativo que el usuario se sincronice manualmente en la colección devuelta al recorrerla a través Iteratorde , Spliterator o Stream:

Collection c = Collections.synchronizedCollection(myCollection);
                ...
             synchronized (c) {
                 Iterator i = c.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.

La colección devuelta no pasa las hashCode operaciones y equals a la colección de respaldo, pero se basa en Objectlos métodos equals y hashCode. Esto es necesario para conservar los contratos de estas operaciones en caso de que la colección de respaldo sea un conjunto o una lista.

La colección devuelta se serializará si la colección especificada es serializable.

Documentación de Java para java.util.Collections.synchronizedCollection(java.util.Collection<T>).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a