c#-任务-连续任务
using System;
using System.Threading;
using System.Threading.Tasks;
// 连续任务
namespace ConsoleApp18
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
ContinuationTasks();
//main2();
Task.Delay(8000).Wait();
}
public static void ContinuationTasks() {
var t1 = new Task<(int x,int y)>(DoOnFirst,5);
Action<Task<(int x, int y)>> continuationAction = fun2;
Task t2 = t1.ContinueWith(continuationAction);
t1.Start();
}
private static (int x,int y) DoOnFirst(Object x) {
Console.WriteLine("DoOnFirst");
Task.Delay(3000).Wait();
return (5, 6);
}
private static void DoOnSecond() {
Console.WriteLine("DoOnSecond");
Task.Delay(3000).Wait();
}
private static void fun2(Task<(int x, int y)> t) {
Console.WriteLine(t.Result);
Task t2 = new Task(DoOnSecond);
t2.Start();
}
}
}