Compartir a través de


ListDictionary.IsSynchronized Propiedad

Definición

Obtiene un valor que indica si ListDictionary está sincronizado (seguro para subprocesos).

public:
 property bool IsSynchronized { bool get(); };
public bool IsSynchronized { get; }
member this.IsSynchronized : bool
Public ReadOnly Property IsSynchronized As Boolean

Valor de propiedad

Esta propiedad siempre devuelve false.

Implementaciones

Ejemplos

En el ejemplo de código siguiente se muestra cómo bloquear la colección mediante durante SyncRoot toda la enumeración.

ListDictionary myCollection = new ListDictionary();
lock(myCollection.SyncRoot)
{
    foreach (object item in myCollection)
    {
        // Insert your code here.
    }
}
Dim myCollection As New ListDictionary()
SyncLock myCollection.SyncRoot
    For Each item as Object In myCollection
        ' Insert your code here.
    Next item
End SyncLock

Recuperar el valor de esta propiedad es una operación O(1).

Comentarios

ListDictionary implementa la IsSynchronized propiedad porque la System.Collections.ICollection interfaz lo requiere.

Las clases derivadas pueden proporcionar una versión sincronizada de ListDictionary mediante la SyncRoot propiedad .

La enumeración a través de una colección no es intrínsecamente un procedimiento seguro para subprocesos. Incluso cuando se sincroniza una colección, otros subprocesos todavía pueden modificar la colección, lo que hace que el enumerador inicie una excepción. Para garantizar la seguridad de los subprocesos durante la enumeración, puede bloquear la colección durante toda la enumeración o detectar las excepciones resultantes de los cambios realizados por otros subprocesos.

Se aplica a

Consulte también