有没有办法使用ContinueWith任务启动任务?

dot*_*ter 21 .net c# exception-handling task-parallel-library

我的代码:

var r = from x in new Task<int>(() => 1)
        from y in new Task<int>(() => x + 1) 
        select y;
r.ContinueWith(x => Console.WriteLine(x.Result)).Start();   
Run Code Online (Sandbox Code Playgroud)

要么

new Task<int>(() => 1)
    .ContinueWith(x => x.Result + 1)
    .ContinueWith(x => Console.WriteLine(x.Result))
    .Start();
Run Code Online (Sandbox Code Playgroud)

例外:

可能不会在继续任务上调用Start.

所以我需要开始第一项任务.有没有办法调用上一个任务Start方法来运行所有任务?

Jon*_*eet 8

有没有使用Task.Factory.StartNewmsdn,ms docs进行第一项任务的原因?是的,它是不一致的 - 但它从根本上说是一种不同的任务,就明确而不仅仅是一种延续而言.

  • 我只是想编写任务.关于运行与否的决定可以是任何地方. (4认同)