像这样的问题:
建议使用DataflowBlock.NullTarget {T}来丢弃管道中的项目,例如
forwarder.LinkTo(DataflowBlock.NullTarget<SomeType>());
但是,如果你像这样使用NullTarget,你如何等待完成?创建丢弃块会不会更好:
ITargetBlock<SomeType> discard = DataflowBlock.NullTarget<SomeType>();
forwarder.LinkTo(discard);
并等待完成?即。
discard.Completion.Wait()
或者您是否需要等待“NullTarget”块的完成,即它是否只是扔掉而忘记?
答案 0 :(得分:3)
这没有记录,但根据我的测试,即使在Completion
或{{NullTarget
之后,Complete()
的{{1}} 永远不会完成1}}它。
这意味着您不能等待Fault()
块的完成,因为等待永远不会结束。