HybridDictionary.IsSynchronized Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá hodnotu označující, zda HybridDictionary je synchronizováno (bezpečné vlákno).
public:
property bool IsSynchronized { bool get(); };
public bool IsSynchronized { get; }
member this.IsSynchronized : bool
Public ReadOnly Property IsSynchronized As Boolean
Hodnota vlastnosti
Tato vlastnost vždy vrátí false.
Implementuje
Příklady
Následující příklad kódu ukazuje, jak uzamknout kolekci pomocí celého výčtu SyncRoot .
HybridDictionary myCollection = new HybridDictionary();
lock(myCollection.SyncRoot)
{
foreach (object item in myCollection)
{
// Insert your code here.
}
}
Dim myCollection As New HybridDictionary()
SyncLock myCollection.SyncRoot
For Each item In myCollection
' Insert your code here.
Next
End SyncLock
Načtení hodnoty této vlastnosti je operace O(1).
Poznámky
HybridDictionary implementuje IsSynchronized vlastnost, protože je vyžadována rozhraním System.Collections.ICollection .
Odvozené třídy mohou poskytnout synchronizovanou verzi HybridDictionary 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.