Task委托的方法是在什么时候执行呢?是在Run的时候还是在Start的时候呢?直接上代码
public static void Main()
{
FuncOne();
}
private static void FuncOne()
{
Console.WriteLine("当前线程:" + Thread.CurrentThread.GetHashCode());
Action action = new Action(Run);
Task task = new Task(action);
Console.WriteLine("当前状态:" + task.Status);
task.Start();
Console.WriteLine("当前状态:" + task.Status);
}
private static void Run()
{
Console.WriteLine("当前线程:" + Thread.CurrentThread.GetHashCode());
}
然后输出结果:
发现Run方法居然没有被执行,start方法后面这个的task的状态是WaitingToRun等待被执行,还没有执行呢主程序就结束了,所以需要