问题像这样的:你需要等待完成对TPL数据流DataflowBlock.NullTarget <T>
建议使用DataflowBlock.NullTarget横置丢弃从一个管道,例如项目
forwarder.LinkTo(DataflowBlock.NullTarget<SomeType>());
但是,如果您使用这样的NullTarget,您如何等待Completion?创建一个丢弃块会不会更好:
ITargetBlock<SomeType> discard = DataflowBlock.NullTarget<SomeType>();
forwarder.LinkTo(discard);
并等待这个完成?即
discard.Completion.Wait()
或者你并不需要等待“NullTarget”块完成后,即是它只是扔掉忘记?
你为什么要*等待它?该块没有做任何处理,所以我没有看到任何理由,你想等待它。 – svick
因为我已经构建了一个管道,并且为了等待管道完成,我需要在所有端点上等待()。这些看起来像我的终点(他们确实有一个完成属性)。 – bornfromanegg
好吧,我已经看了一下数据流库,显然这个完成返回TaskCompletionSource().Task。猜猜我现在正在阅读TaskCompletionSource! :-) –
bornfromanegg