Поделиться через


SortedDictionary<TKey,TValue>.ICollection.IsSynchronized Свойство

Определение

Возвращает значение, показывающее, является ли доступ к коллекции ICollection синхронизированным (потокобезопасным).

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

Значение свойства

true, если доступ к классу ICollection является синхронизированным (потокобезопасным); в противном случае — false. В используемой по умолчанию реализации SortedDictionary<TKey,TValue> это свойство всегда возвращает значение false.

Реализации

Комментарии

Используемые по умолчанию реализации коллекций в пространстве имен System.Collections.Generic не синхронизированы.

Перечисление коллекции не является потокобезопасной процедурой. Даже при синхронизации коллекции другие потоки по-прежнему могут изменять коллекцию, что может привести к возникновению исключения перечислителем. Для обеспечения потокобезопасности при перечислении можно либо заблокировать коллекцию на все время перечисления, либо перехватывать исключения, возникающие в результате изменений, внесенных другими потоками.

Свойство ICollection.SyncRoot возвращает объект , который можно использовать для синхронизации доступа к объекту ICollection. Синхронизация действует только в том случае, если все потоки блокируют объект перед доступом к коллекции.

Получение значения этого свойства является операцией O(1).

Применяется к

См. также раздел