gpt4 book ai didi

c# - 将 completeAdding 唤醒已经被 take 阻塞的线程

转载 作者:太空宇宙 更新时间:2023-11-03 11:37:03 26 4
gpt4 key购买 nike

在消费者已经被 take() 阻塞的情况下,生产者的 completeAdding 会唤醒它吗?使用 BlockingCollection。 MSDN上没有说清楚。

最佳答案

没有。

快速实验表明它将在 Take() 方法中抛出 InvalidOperation 异常。

这是有道理的:

int value = data.Take();

当线程/任务只是“唤醒”而没有返回任何数据时,value 会是什么?

如果您被 TryTake(out x) 阻止,添加完成时它将返回 false

关于c# - 将 completeAdding 唤醒已经被 take 阻塞的线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5919013/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com