MenuItemCollection.SyncRoot Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u een object op dat kan worden gebruikt om de toegang tot het MenuItemCollection object te synchroniseren.
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
Waarde van eigenschap
Een Object die kan worden gebruikt om de toegang tot de MenuItemCollection.
Implementeringen
Opmerkingen
De SyncRoot eigenschap biedt een gesynchroniseerde versie van het MenuItemCollection object dat kan worden gebruikt met het synchroniseren van code (threading).
Caution
De IsSynchronized eigenschap van deze klasse retourneert falsealtijd, wat aangeeft dat de MenuItemCollection klasse niet is gesynchroniseerd (niet thread veilig).
Het synchroniseren van code moet bewerkingen uitvoeren op het SyncRoot object van de MenuItemCollection verzameling, niet rechtstreeks op het MenuItemCollection object zelf. Dit zorgt voor de juiste werking van verzamelingen die zijn afgeleid van andere objecten. Het onderhoudt met name de juiste synchronisatie met andere threads die het MenuItemCollection object mogelijk tegelijkertijd wijzigen.
Note
Het object dat in deze implementatie wordt geretourneerd, is het ArrayList object dat wordt gebruikt om de MenuItem objecten in de verzameling op te slaan.
Het inventariseren via een verzameling is intrinsiek geen thread-veilige procedure. Zelfs wanneer een verzameling wordt gesynchroniseerd, kunnen andere threads de verzameling nog steeds wijzigen, waardoor de enumerator een uitzondering genereert. Om de veiligheid van threads tijdens de inventarisatie te garanderen, kunt u de verzameling vergrendelen tijdens de volledige inventarisatie of de uitzonderingen ondervangen die het gevolg zijn van wijzigingen die door andere threads zijn aangebracht.
Zie de SyncRoot eigenschap van de SyncRoot interface voor meer informatie over de ICollection eigenschap.