PersonalizationStateInfoCollection.SyncRoot Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает объект, который можно использовать для синхронизации доступа к экземпляру PersonalizationStateInfoCollection .
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
Значение свойства
Объект, который можно использовать для синхронизации доступа к объекту PersonalizationStateInfoCollection. Набор элементов управления веб-частей возвращает ссылку на текущий объект коллекции.
Реализации
Комментарии
Перечисление через коллекцию по сути не является потокобезопасной процедурой. Даже если коллекция синхронизирована, другие потоки по-прежнему могут изменять коллекцию, что приводит к возникновению исключения перечислителем. Чтобы гарантировать безопасность потоков во время перечисления, можно заблокировать коллекцию во время всего перечисления или поймать исключения, полученные из изменений, внесенных другими потоками.
Производные классы могут предоставлять собственные синхронизированные версии коллекции с помощью SyncRoot свойства. Синхронизированный код должен выполнять операции с SyncRoot коллекцией, а не непосредственно в самой коллекции. Это обеспечивает правильную работу коллекций, производных от других объектов. В частности, он поддерживает правильную синхронизацию с другими потоками, которые могут одновременно изменять экземпляр коллекции.