我理解为BlockingCollection使用的是非忙等待方式,即在新项目通知或回调中进行。因此,我不明白它是如何阻塞的,但我认为我可能混淆了被阻塞的线程和对共享对象的阻塞访问?
我理解为BlockingCollection使用的是非忙等待方式,即在新项目通知或回调中进行。因此,我不明白它是如何阻塞的,但我认为我可能混淆了被阻塞的线程和对共享对象的阻塞访问?
https://blogs.msdn.microsoft.com/toub/2006/04/12/blocking-queues/
基本上,当您尝试DeQueue时,会发生阻塞。EnQueue是线程安全的,而DeQueue将阻塞(阻塞调用DeQueue的线程),直到有东西可获取为止。