TreeNodeCollection.SyncRoot Proprietà

Definizione

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

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 all'oggetto TreeNodeCollection.

Implementazioni

Commenti

La SyncRoot proprietà fornisce una versione sincronizzata di TreeNodeCollection che può essere usata con il codice di sincronizzazione (threading).

Attenzione

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

La sincronizzazione del codice deve eseguire operazioni sull'oggetto dell'oggetto SyncRootTreeNodeCollection, non direttamente sull'oggetto TreeNodeCollection 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 TreeNodeCollection .

Nota

L'oggetto restituito in questa implementazione è l'oggetto System.Collections.ArrayList utilizzato per archiviare gli TreeNode 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 ICollection.SyncRoot proprietà dell'interfaccia System.Collections.ICollection .

Si applica a

Vedi anche