Condividi tramite


MenuItemCollection.SyncRoot Proprietà

Definizione

Ottiene un oggetto che può essere usato per sincronizzare l'accesso all'oggetto MenuItemCollection.

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

Valore della proprietà

Oggetto Object che può essere utilizzato per sincronizzare l'accesso a MenuItemCollection.

Implementazioni

Commenti

La SyncRoot proprietà fornisce una versione sincronizzata dell'oggetto MenuItemCollection che può essere utilizzata con il codice di sincronizzazione (threading).

Attenzione

La IsSynchronized proprietà di questa classe restituisce falsesempre , che indica che la MenuItemCollection classe non è sincronizzata (non thread-safe).

La sincronizzazione del codice deve eseguire operazioni sull'oggetto SyncRoot della MenuItemCollection raccolta, non direttamente sull'oggetto MenuItemCollection stesso. In questo modo si garantisce il corretto funzionamento delle raccolte derivate da altri oggetti. In particolare, mantiene una corretta sincronizzazione con altri thread che potrebbero modificare contemporaneamente l'oggetto MenuItemCollection .

Nota

L'oggetto restituito in questa implementazione è l'oggetto ArrayList utilizzato per archiviare gli MenuItem oggetti nell'insieme.

L'enumerazione di una raccolta non è di per sé una procedura thread-safe. Anche quando una raccolta è sincronizzata, altri thread potrebbero comunque modificare la raccolta, causando la generazione di un'eccezione da parte dell'enumeratore. Per garantire la protezione dei thread durante l'enumerazione, è possibile bloccare la raccolta per l'intera enumerazione oppure intercettare le eccezioni determinate dalle modifiche apportate da altri thread.

Per altre informazioni sulla SyncRoot proprietà , vedere la SyncRoot proprietà dell'interfaccia ICollection .

Si applica a

Vedi anche