SORU
5 HAZİRAN 2010, CUMARTESİ


İş parçacığı güvenli koleksiyonlarında .NET

Bir iş parçacığı güvenli bir toplama (örneğin Set) gerektiğinde standart bugünlerde. Senkronize kendim yapacağım, ya da doğal olarak iş parçacığı güvenli bir koleksiyonu var mı?

CEVAP
5 HAZİRAN 2010, CUMARTESİ


.NET 4.0 Çerçeve birkaç tanıtır System.Collections.Concurrent Namespace iş parçacığı için güvenli bir koleksiyon:

ConcurrentBag<T>
Temsil eden nesneler güvenli iplik, sırasız bir koleksiyon.

ConcurrentDictionary<TKey, TValue>
Temsil eden anahtar-değer birden çok iş parçacığı tarafından erişilebilen bir çift eş zamanlı iş parçacığı için güvenli bir koleksiyon.

ConcurrentQueue<T>
Temsil evresel ilk giren-ilk çıkar (FIFO) bir koleksiyon.

ConcurrentStack<T>
Temsil bir iş parçacığı için güvenli son giren-ilk çıkar (FIFO) koleksiyonu.


Diğer koleksiyonlar .NET Çerçeve-güvenli iş parçacığı varsayılan değildir ve her işlem için kilitli olması gerekir:

lock (mySet)
{
    mySet.Add("Hello World");
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ecf150king

    ecf150king

    20 Ocak 2006
  • L33TNoonProductions

    L33TNoonProd

    24 EYLÜL 2010
  • уσ ρℓz sυв ιℓℓ sυв вαcқ

    уσ ρℓz

    14 EKİM 2010