Udostępnij za pośrednictwem


MenuItemCollection.SyncRoot Właściwość

Definicja

Pobiera obiekt, który może służyć do synchronizowania dostępu do MenuItemCollection obiektu.

public:
 property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object

Wartość właściwości

Object

Element Object , który może służyć do synchronizowania dostępu do elementu MenuItemCollection.

Implementuje

Uwagi

Właściwość SyncRoot udostępnia zsynchronizowaną wersję MenuItemCollection obiektu, która może być używana z kodem synchronizowania (wątkowania).

Przestroga

Właściwość IsSynchronized tej klasy zawsze zwraca falsewartość , która wskazuje, że MenuItemCollection klasa nie jest zsynchronizowana (nie jest bezpieczna wątkowa).

Synchronizowanie kodu musi wykonywać operacje na SyncRoot obiekcie MenuItemCollection kolekcji, a nie bezpośrednio na MenuItemCollection samym obiekcie. Gwarantuje to prawidłowe funkcjonowanie kolekcji, które są uzyskiwane z innych obiektów. W szczególności utrzymuje właściwą synchronizację z innymi wątkami, które mogą być jednocześnie modyfikowane przez MenuItemCollection obiekt.

Uwaga

Obiekt zwrócony w tej implementacji jest ArrayList obiektem używanym do przechowywania MenuItem obiektów w kolekcji.

Wyliczanie w kolekcji nie jest wewnętrznie procedurą odporną na wielowątkowość. Nawet w przypadku synchronizacji kolekcji inne wątki mogą nadal modyfikować kolekcję, powodując, że moduł wyliczający zgłasza wyjątek. Aby zagwarantować bezpieczeństwo wątków podczas wyliczania, można zablokować kolekcję podczas całego procesu wyliczania albo rejestrować wyjątki wynikłe ze zmian wprowadzanych przez inne wątków.

Aby uzyskać więcej informacji na SyncRoot temat właściwości, zobacz SyncRoot właściwość interfejsu ICollection .

Dotyczy

Zobacz też