MenuItemCollection.SyncRoot Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft ein Objekt ab, mit dem der Zugriff auf das MenuItemCollection-Objekt synchronisiert werden kann.
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
Eigenschaftswert
Ein Object, mit dem der Zugriff auf die MenuItemCollection-Auflistung synchronisiert werden kann.
Implementiert
Hinweise
Die SyncRoot -Eigenschaft stellt eine synchronisierte Version des Objekts bereit, die MenuItemCollection mit Synchronisierungscode (Threading) verwendet werden kann.
Achtung
Die IsSynchronized Eigenschaft dieser Klasse gibt immer zurück false
, was angibt, dass die MenuItemCollection Klasse nicht synchronisiert ist (nicht threadsicher).
Beim Synchronisieren von Code müssen Vorgänge für das SyncRoot Objekt der MenuItemCollection Auflistung und nicht direkt für das MenuItemCollection Objekt selbst ausgeführt werden. Dies gewährleistet die einwandfreie Funktion von Auflistungen, die von anderen Objekten abgeleitet sind. Insbesondere behält sie eine ordnungsgemäße Synchronisierung mit anderen Threads bei, die MenuItemCollection das Objekt möglicherweise gleichzeitig ändern.
Hinweis
Das in dieser Implementierung zurückgegebene Objekt ist das Objekt, das ArrayList zum Speichern der MenuItem Objekte in der Auflistung verwendet wird.
Die Enumeration einer Auflistung ist systemintern keine threadsichere Prozedur. Selbst wenn eine Auflistung synchronisiert wird, können andere Threads die Auflistung immer noch ändern, sodass der Enumerator eine Ausnahme auslöst. Um während der Enumeration Threadsicherheit zu gewährleisten, können Sie entweder die Auflistung während der gesamten Enumeration sperren oder die Ausnahmen, die aus von anderen Threads stammenden Änderungen resultieren, abfangen.
Weitere Informationen zur SyncRoot -Eigenschaft finden Sie in der SyncRoot Eigenschaft der ICollection Schnittstelle.