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

  • hans peder sahl

    hans peder s

    22 Temmuz 2009
  • sonia989

    sonia989

    26 EKİM 2006
  • Tina Chen

    Tina Chen

    26 Mayıs 2012