C# 中的執行緒安全集合
.NET Framework 4 引入了 System.Collections.Concurrent 名稱空間。該名稱空間有大量的集合類。這些類既是執行緒安全的,也是可擴充套件的。多個執行緒可以安全地將項新增到這些集合或從這些集合中移除項,
以下並行集合型別使用輕量級同步機制:SpinLock、SpinWait 等。它們是 .NET Framework 4 中的新選項。
我們來看看 C# 中的並行集合 −
序號。 | 型別和說明 |
---|---|
1 | BlockingCollection<T> 任何型別的繫結和阻塞功能。 |
2 | ConcurrentDictionary<TKey,TValue> 金鑰-值對字典的執行緒安全實現。 |
3 | ConcurrentQueue<T> 先進先出 (FIFO) 佇列的執行緒安全實現。 |
4 | ConcurrentStack<T> 後進先出 (LIFO) 棧的執行緒安全實現。 |
5 | ConcurrentBag<T> 無序元素集合的執行緒安全實現。 |
6 | IProducerConsumerCollection<T> 一種型別必須實現的介面,才能用於 BlockingCollection |
廣告