ActivityCollection.ICollection.SyncRoot Propiedad
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í.
Obtiene un objeto que se puede usar para sincronizar el acceso a ICollection<T>.
property System::Object ^ System::Collections::ICollection::SyncRoot { System::Object ^ get(); };
object System.Collections.ICollection.SyncRoot { get; }
member this.System.Collections.ICollection.SyncRoot : obj
ReadOnly Property SyncRoot As Object Implements ICollection.SyncRoot
Valor de propiedad
Un objeto que se puede usar para sincronizar el acceso a la clase ICollection<T>.
Implementaciones
Comentarios
Para las colecciones cuyo almacenamiento subyacente no esté disponible públicamente, la implementación esperada tan sólo debe devolver la instancia actual. Hay que tener en cuenta que puede que el puntero que señala a la instancia actual no sea suficiente para las colecciones que contienen otras colecciones, que deben devolver la propiedad SyncRoot de la colección subyacente.
La mayoría de las clases de colección del espacio de nombres System.Collections también implementan un método Synchronized
que proporciona un contenedor sincronizado alrededor de la colección subyacente. Sin embargo, las clases derivadas pueden proporcionar su propia versión sincronizada de la colección mediante la propiedad ICollection.SyncRoot. El código de la sincronización debe realizar las operaciones en la propiedad ICollection.SyncRoot de la colección, y no directamente en la colección. De este modo, se garantiza el funcionamiento correcto de las colecciones derivadas de otros objetos. En concreto, mantiene la sincronización correcta con otros subprocesos que podrían modificar al mismo tiempo la instancia de la colección.