問題像這樣的:你需要等待完成對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