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

  • Fuse

    Fuse

    21 Kasım 2005
  • iNCH

    iNCH

    20 Temmuz 2009
  • MndsgnVEVO

    MndsgnVEVO

    26 Kasım 2013