MenuItemCollection.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 MenuItemCollection .
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
Hodnota vlastnosti
Slouží Object k synchronizaci přístupu k objektu MenuItemCollection.
Implementuje
Poznámky
Vlastnost SyncRoot poskytuje synchronizovanou verzi objektu MenuItemCollection , kterou lze použít se synchronizačním kódem (podprocesy).
Upozornění
Vlastnost IsSynchronized této třídy vždy vrací false
, což označuje, že MenuItemCollection třída není synchronizovaná (není bezpečná pro přístup z více vláken).
Synchronizace kódu musí provádět operace s objektem SyncRootMenuItemCollection kolekce, nikoli přímo se samotným objektem MenuItemCollection . Tím zajistíte správnou funkci kolekcí, které jsou odvozeny z jiných objektů. Konkrétně udržuje správnou synchronizaci s jinými vlákny, která mohou současně měnit MenuItemCollection objekt.
Poznámka
Objekt vrácený v této implementaci ArrayList je objekt použitý k uložení MenuItem objektů v kolekci.
Výčet prostřednictvím kolekce nemůže být procedurou bezpečnou pro přístup z více vláken. I když je kolekce synchronizována, ostatní vlákna mohou kolekci stále upravovat, což způsobí, že enumerátor vyvolá výjimku. K zaručení bezpečnosti přístupu z více vláken můžete buďto zamknout kolekci na celou dobu práce s výčtem, nebo zachycovat výjimky vzniklé v důsledku změn prováděných ostatními vlákny.
Další informace o SyncRoot vlastnosti naleznete ve SyncRoot vlastnosti ICollection rozhraní.