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

  • apenney888

    apenney888

    27 EKİM 2010
  • Caramella Girls

    Caramella Gi

    19 Mayıs 2008
  • segtlim

    segtlim

    21 EKİM 2008