TreeNodeCollection.SyncRoot Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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é
Object qui peut être utilisé pour synchroniser l'accès à TreeNodeCollection.
Implémente
Remarques
La SyncRoot propriété fournit une version synchronisée du qui peut être utilisée avec le TreeNodeCollection code de synchronisation (threading).
Attention
La IsSynchronized propriété de cette classe retourne false
toujours , 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 un bon fonctionnement des collections dérivées d’autres objets. Plus précisément, il maintient une synchronisation correcte avec d’autres threads qui peuvent modifier simultanément l’objet TreeNodeCollection .
Notes
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 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 au cours de l’énumération, vous pouvez verrouiller la collection pendant l’ensemble de l’énumération ou bien intercepter les exceptions résultant des modifications apportées par les autres threads.
Pour plus d’informations sur la SyncRoot propriété, consultez la ICollection.SyncRoot propriété de l’interface System.Collections.ICollection .