ActivityCollection.ICollection.SyncRoot Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает объект, с помощью которого можно синхронизировать доступ к коллекции 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
Значение свойства
Объект, который может быть использован для синхронизации доступа к коллекции ICollection<T>.
Реализации
Комментарии
Для коллекций, хранилище которых не является общедоступным, ожидаемая реализация возвращает текущий экземпляр. Обратите внимание, что для коллекций, которые являются оболочкой для других коллекций, указателя на текущий экземпляр может быть недостаточно. Эти коллекции должны возвращать свойство SyncRoot соответствующей коллекции.
Большинство классов коллекций в пространстве имен System.Collections также реализуют метод Synchronized
, который обеспечивает создание синхронизированной оболочки для коллекции. Однако производные классы могут предоставлять собственную синхронизированную версию коллекции с помощью свойства ICollection.SyncRoot. Синхронизированный код должен выполнять операции над свойством ICollection.SyncRoot коллекции, но не над самой коллекцией. Это обеспечивает правильную работу коллекций, являющихся производными других объектов. В частности, это обеспечивает правильную синхронизацию с другими потоками, которые могут одновременно вносить изменения в экземпляр коллекции.