Sdílet prostřednictvím


StringDictionary.IsSynchronized Vlastnost

Definice

Získá hodnotu označující, zda je přístup k StringDictionary této synchronizaci (bezpečné vlákno).

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

Hodnota vlastnosti

true pokud je přístup k sadě StringDictionary synchronizován (bezpečné vlákno); v opačném případě false.

Příklady

Následující příklad kódu ukazuje, jak uzamknout kolekci pomocí celého výčtu SyncRoot .

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

Načtení hodnoty této vlastnosti je operace O(1).

Poznámky

Instance StringDictionary není synchronizovaná. Odvozené třídy mohou poskytnout synchronizovanou verzi StringDictionary použití SyncRoot vlastnosti.

Výčet prostřednictvím kolekce není vnitřně bezpečným postupem pro přístup z více vláken. I když je kolekce synchronizována, ostatní vlákna mohou stále upravovat kolekci, což způsobí, že enumerátor vyvolá výjimku. Chcete-li zaručit bezpečnost vláken během výčtu, můžete buď uzamknout kolekci během celého výčtu, nebo zachytit výjimky vyplývající z změn provedených jinými vlákny.

Platí pro