gpt4 book ai didi

c# - Task.ContinueWith() 父任务不等待子任务完成

转载 作者:太空狗 更新时间:2023-10-29 21:12:41 25 4
gpt4 key购买 nike

<分区>

由于我是在嵌套任务的上下文中理解 Task,所以我真的不明白 - 为什么第 3 次打印在第 2 次打印之前?

尽管如此,我已经使用了 Task.WaitAll(t),它在 2nd 行之前打印了 3rd 行。

代码:

public static void Main()
{

Task t = new Task(
() =>
{
Thread.Sleep(2000);
Console.WriteLine("1st print...");
});
t.ContinueWith(
x =>
{
Thread.Sleep(2000);
Console.WriteLine("2nd print...");
},
TaskContinuationOptions.OnlyOnRanToCompletion);

t.Start();
Task.WaitAll(t);

Console.WriteLine("3rd print...");
Console.Read();

}

输出:

enter image description here

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com