任务状态WaitingForActivation - 这是什么意思?

时间:2012-02-13 03:23:44

标签: c# task

我以下面的方式启动wpf任务

var newTask = Task.Factory.StartNew(() =>
{
fcStartSubPageCrawl(srMainSiteURL, srMainSiteId);
}).ContinueWith((t) =>
{
  var aggException = t.Exception.Flatten();
 foreach (var exception in aggException.InnerExceptions)
   csPages.LogException(exception.ToString());
},
TaskContinuationOptions.OnlyOnFaulted);

现在我检查任务状态

像这样(分配给任务列表的新任务):

  if (tskLocalTaskList[i].IsCompleted == false)

我看到任务状态= WaitingForActivation

这是什么意思?为什么它在等待激活?

C#4.0 WPF

1 个答案:

答案 0 :(得分:6)

WaitingForActivation是任务驻留在Start方法的调用和Task调度程序调度任务的时刻之间的时间。因此,在调用任务的start方法之后,将任务状态设置为WaitingForActivation并调用scheduler.AddWork。在这里,Task是调度程序(WaitingToRun)或者是immidiatly。

哦,这与WPF无关,任务是BCL的一部分