【发布时间】:2020-06-23 15:59:14
【问题描述】:
我有这段代码sn-p,尝试使用TransformBlock来启动代码执行,如下:
public static void Main(string[] args)
{
var multiplyBlock = new TransformBlock<int, int>(x => x * 2);
var additionBlock = new TransformBlock<int, int>(x => x + 2);
multiplyBlock.LinkTo(additionBlock, new DataflowLinkOptions { PropagateCompletion = true });
multiplyBlock.Post(3);
additionBlock.Completion.ContinueWith(x => Console.WriteLine(x));
multiplyBlock.Complete();
additionBlock.Completion.Wait();
}
但是当我运行这段代码时,它挂起并且什么也不打印。我尝试调试它,我发现所有代码行都已完成,但在函数结束时,程序挂起。那么这里发生了什么,如何解决呢?
谢谢。
【问题讨论】:
标签: c# task-parallel-library transform freeze tpl-dataflow