Dictionary<TKey,TValue>.ICollection.IsSynchronized Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Recebe um valor que indica se o acesso ao ICollection é sincronizado (thread safe).
property bool System::Collections::ICollection::IsSynchronized { bool get(); };
bool System.Collections.ICollection.IsSynchronized { get; }
member this.System.Collections.ICollection.IsSynchronized : bool
ReadOnly Property IsSynchronized As Boolean Implements ICollection.IsSynchronized
Valor de Propriedade
true se o acesso ao ICollection for sincronizado (thread safe); caso contrário, false. Na implementação padrão de Dictionary<TKey,TValue>, esta propriedade devolve falsesempre .
Implementações
Observações
As implementações padrão das coleções no System.Collections.Generic namespace não estão sincronizadas.
Enumerar através de uma coleção não é, intrinsecamente, um procedimento seguro para threads. Mesmo quando uma coleção está sincronizada, outros threads podem ainda modificar a coleção, o que pode levar o enumerador a lançar uma exceção. Para garantir a segurança dos threads durante a enumeração, pode bloquear a coleção durante toda a enumeração ou apanhar as exceções resultantes de alterações feitas por outros threads.
A SyncRoot propriedade devolve um objeto que pode ser usado para sincronizar o acesso ao ICollection. A sincronização só é eficaz se todos os threads bloquearem o objeto antes de aceder à coleção.
Obter o valor desta propriedade é uma operação O(1).