我正在使用 a Blockingcollectionas aFIFO queue但我正在对文件进行很多操作,其中consumer可能很容易遇到文件锁,所以我所做的是创建一个简单的 try catch,其中消费者重新排队本身,但在很长一段时间FIFO queue内队列中的许多其他项目,这足以暂停,但在一个空的或非常短的情况下FIFO queue,这意味着consumer永久地锤击队列,重复出现可能仍将被文件锁定的自身。
IE
consumer busy-> 重新排队 -> consumer busy -> 重新排队(无限期)
BlockingCollection如果新消费者不到 10 秒,有没有办法让它不尝试运行它?即可能在队列中获取网络并继续,如果它的 createdDateTime 为空(第一次尝试的默认值)或> 10秒,则只接受下一个消费者?