Partager via


StringCollection.IsSynchronized Propriété

Définition

Obtient une valeur indiquant si l’accès à l’objet StringCollection est synchronisé (thread safe).

public:
 property bool IsSynchronized { bool get(); };
public bool IsSynchronized { get; }
member this.IsSynchronized : bool
Public ReadOnly Property IsSynchronized As Boolean

Valeur de propriété

Cette propriété retourne falsetoujours .

Implémente

Remarques

StringCollection implémente la IsSynchronized propriété, car elle est requise par l’interface ICollection .

L’énumération par le biais d’une collection n’est intrinsèquement pas une procédure sécurisée de thread. Même lorsqu’une collection est synchronisée, d’autres threads peuvent toujours modifier la collection, ce qui provoque 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.

L’exemple de code suivant montre comment verrouiller la collection à l’aide de l’énumération SyncRoot entière :

StringCollection myCollection = new StringCollection();
lock(myCollection.SyncRoot)
{
    foreach (object item in myCollection)
    {
        // Insert your code here.
    }
}
Dim myCollection As New StringCollection()
SyncLock myCollection.SyncRoot
    For Each item as Object In myCollection
        ' Insert your code here.
    Next item
End SyncLock

La récupération de la valeur de cette propriété est une opération O(1).

S’applique à

Voir aussi