TreeNodeCollection.SyncRoot 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á objekt, který lze použít k synchronizaci přístupu k objektu TreeNodeCollection .
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
Hodnota vlastnosti
A Object , který lze použít k synchronizaci přístupu k souboru TreeNodeCollection.
Implementuje
Poznámky
Vlastnost SyncRoot poskytuje synchronizovanou verzi TreeNodeCollection kódu, kterou lze použít se synchronizací kódu (threading).
Upozornění
Vlastnost IsSynchronized této třídy vždy vrátí false, což značí, že TreeNodeCollection třída není synchronizována (není bezpečná pro vlákno).
Synchronizace kódu musí provádět operace s objektem SyncRootTreeNodeCollection, ne přímo na TreeNodeCollection sobě. Tím se zajistí správná operace kolekcí odvozených z jiných objektů. Konkrétně udržuje správnou synchronizaci s jinými vlákny, která mohou současně upravovat TreeNodeCollection objekt.
Poznámka:
Objekt vrácený v této implementaci je System.Collections.ArrayList objekt použitý k uložení TreeNode objektů v kolekci.
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.
Další informace o SyncRoot vlastnosti naleznete v ICollection.SyncRoot vlastnosti System.Collections.ICollection rozhraní.