Collections.SynchronizedCollection(ICollection) Método

Definição

Retorna uma coleção sincronizada (thread-safe) apoiada pela coleção 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

a coleção a ser "encapsulada" em uma coleção sincronizada.

Retornos

uma exibição sincronizada da coleção especificada.

Atributos

Comentários

Retorna uma coleção sincronizada (thread-safe) apoiada pela coleção especificada. Para garantir o acesso serial, é fundamental que <o acesso forte>a toda</forte> à coleção de backup seja realizado por meio da coleção retornada.

É imperativo que o usuário sincronize manualmente na coleção retornada ao atravessá-la por meio Iteratorde , Spliterator ou Stream:

Collection c = Collections.synchronizedCollection(myCollection);
                ...
             synchronized (c) {
                 Iterator i = c.iterator(); // Must be in the synchronized block
                 while (i.hasNext())
                    foo(i.next());
             }

A falha ao seguir este conselho pode resultar em um comportamento não determinístico.

A coleção retornada não passa a hashCode coleção e equals as operações para a coleção de backup, mas se baseia nos Objectmétodos 's equals e hashCode. Isso é necessário para preservar os contratos dessas operações, caso a coleção de backup seja um conjunto ou uma lista.

A coleção retornada será serializável se a coleção especificada for serializável.

Java documentação para java.util.Collections.synchronizedCollection(java.util.Collection<T>).

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.

Aplica-se a