MenuItemCollection.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 MenuItemCollection.
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 pouvant être utilisé pour synchroniser l’accès à MenuItemCollection.
Implémente
Remarques
La SyncRoot propriété fournit une version synchronisée de l’objet MenuItemCollection qui peut être utilisée avec le code de synchronisation (threading).
Attention
La IsSynchronized propriété de cette classe retourne false
toujours , ce qui indique que la MenuItemCollection classe n’est pas synchronisée (pas thread-safe).
La synchronisation du code doit effectuer des opérations sur l’objet SyncRoot de la MenuItemCollection collection, et non directement sur l’objet MenuItemCollection lui-même. Cela garantit un 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 MenuItemCollection .
Notes
L’objet retourné dans cette implémentation est l’objet ArrayList utilisé pour stocker les MenuItem 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 SyncRoot propriété de l’interface ICollection .