ListDictionary.IsSynchronized Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
öğesinin eşitlenip eşitlenmediğini ListDictionary belirten bir değer alır (iş parçacığı güvenli).
public:
property bool IsSynchronized { bool get(); };
public bool IsSynchronized { get; }
member this.IsSynchronized : bool
Public ReadOnly Property IsSynchronized As Boolean
Özellik Değeri
Bu özellik her zaman döndürür false.
Uygulamalar
Örnekler
Aşağıdaki kod örneği, tüm numaralandırma sırasında kullanarak SyncRoot koleksiyonun nasıl kilitlenmesini gösterir.
ListDictionary myCollection = new ListDictionary();
lock(myCollection.SyncRoot)
{
foreach (object item in myCollection)
{
// Insert your code here.
}
}
Dim myCollection As New ListDictionary()
SyncLock myCollection.SyncRoot
For Each item as Object In myCollection
' Insert your code here.
Next item
End SyncLock
Bu özelliğin değerini almak bir O(1) işlemidir.
Açıklamalar
ListDictionary , arabirimi tarafından IsSynchronizedSystem.Collections.ICollection gerekli olduğundan özelliğini uygular.
Türetilmiş sınıflar özelliğini kullanarak SyncRoot eşitlenmiş ListDictionary bir sürümünü sağlayabilir.
Bir koleksiyonda numaralandırma, iş parçacığı açısından güvenli bir yordam değildir. Bir koleksiyon eşitlendiğinde bile, diğer iş parçacıkları yine de koleksiyonu değiştirebilir ve bu da numaralandırıcının bir özel durum oluşturmasına neden olur. Numaralandırma sırasında iş parçacığı güvenliğini garanti etmek için, tüm numaralandırma sırasında koleksiyonu kilitleyebilir veya diğer iş parçacıkları tarafından yapılan değişikliklerden kaynaklanan özel durumları yakalayabilirsiniz.