我正在使用BlockingCollection类实现的队列来实现生产者-消费者模型队列。
我有多个线程以指定的顺序添加元素(仅适用于每个线程),还有一个线程将元素从中取出。
我不在乎在不同线程之间添加元素的顺序,但是我希望每个线程添加的元素都按照添加顺序排列。
BlockingCollection类可以保证吗?我已经用谷歌搜索了,但是找不到我问题的明确答案。
答案 0 :(得分:1)
ConcurrentQueue<T>
,BlockingCollection<T>
后面的默认集合指出它是:
线程安全的先进先出(FIFO)集合。
无论是在类文档本身还是在Enqueue
和TryDequeue
的文档中,他们都不需要强调任何其他线程问题。
我希望有更强大的文档,我想这就是您要寻找的东西,但是我能提供的最好的是,它说这是FIFO,我必须相信它是。