Partager via


TreeNodeCollection.SyncRoot Propriété

Définition

Obtient un objet qui peut être utilisé pour synchroniser l’accès à l’objet TreeNodeCollection .

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

Valeur de propriété

Qui Object peut être utilisé pour synchroniser l’accès au TreeNodeCollection.

Implémente

Remarques

La SyncRoot propriété fournit une version synchronisée du TreeNodeCollection code pouvant être utilisé avec le code synchronisant (threading).

Avertissement

La IsSynchronized propriété de cette classe retourne falsetoujours , ce qui indique que la TreeNodeCollection classe n’est pas synchronisée (pas thread safe).

La synchronisation du code doit effectuer des opérations sur l’objet SyncRoot du TreeNodeCollection, et non directement sur le TreeNodeCollection lui-même. Cela garantit le bon fonctionnement des collections dérivées d’autres objets. Plus précisément, il gère une synchronisation appropriée avec d’autres threads qui peuvent modifier simultanément l’objet TreeNodeCollection .

Note

L’objet retourné dans cette implémentation est l’objet System.Collections.ArrayList utilisé pour stocker les TreeNode objets dans la collection.

L’énumération par le biais d’une collection n’est intrinsèquement pas une procédure thread-safe. Même lorsqu’une collection est synchronisée, d’autres threads peuvent toujours modifier la collection, ce qui entraîne la levée d’une exception par l’énumérateur. Pour garantir la sécurité des threads pendant l’énumération, vous pouvez verrouiller la collection pendant toute l’énumération ou intercepter les exceptions résultant des modifications apportées par d’autres threads.

Pour plus d’informations sur la SyncRoot propriété, consultez la ICollection.SyncRoot propriété de l’interface System.Collections.ICollection .

S’applique à

Voir aussi