BitArray.IsSynchronized Egenskap

Definition

Hämtar ett värde som anger om åtkomsten BitArray till är synkroniserad (trådsäker).

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

Egenskapsvärde

Den här egenskapen är alltid false.

Implementeringar

Exempel

I följande kodexempel visas hur du låser samlingen med hjälp av SyncRoot under hela uppräkningen.

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

Den här metoden är en O(1) åtgärd.

Kommentarer

BitArray implementerar egenskapen IsSynchronized eftersom den krävs av System.Collections.ICollection gränssnittet.

Att räkna upp genom en samling är i sig inte en trådsäker procedur. Även när en samling synkroniseras kan andra trådar fortfarande ändra samlingen, vilket gör att uppräknaren genererar ett undantag. För att garantera trådsäkerheten under uppräkningen kan du antingen låsa samlingen under hela uppräkningen eller fånga undantagen från ändringar som gjorts av andra trådar.

Gäller för

Se även