我需要一个并发集合,不允许有重复的元素(用于在 BlockingCollection
中作为 Producer/Consumer)。
我不需要元素的严格顺序。
另一方面,我希望最大程度地减少元素在集合中的“存活”时间。也就是说,集合不应该是 LIFO,理想情况下应该是 FIFO。
我觉得我需要没有重复的ConcurrentQueue
,但没有重复的ConcurrentBag
也可能可行。
为什么 C# 没有类似的东西,可能已经有人创建了吗?
这个问题是我之前的问题的结果:What type of IProducerConsumerCollection<T> to use for my task?
BlockingCollection<T>
类期望底层集合始终接受提供的项,否则它会抛出异常并变得损坏。 - Theodor Zoulias