Le statut de la tâche WaitingForActivation - ce que cela signifie?
Je commence wpf tâches avec la manière ci-dessous
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);
Maintenant, quand je vérifier l'état de la tâche de
comme ceci (nouvelles tâches attribuées à la liste des tâches) :
if (tskLocalTaskList[i].IsCompleted == false)
Je vois que le statut de la tâche = WaitingForActivation
qu'est-ce que cela signifie ? Et pourquoi il est en attente d'activation ?
C# WPF 4.0
OriginalL'auteur MonsterMMORPG | 2012-02-13
Vous devez vous connecter pour publier un commentaire.
WaitingForActivation est le temps de la tâche réside entre un appel à la méthode de Démarrage et le moment où la tâche est planifiée par le planificateur de Tâches. Directement après un appel à la méthode de démarrage d'une tâche, les tâches d'état est en cours de mise à WaitingForActivation et un appel à l'ordonnanceur.AddWork est faite. Ici, la Tâche est soit planificateur (WaitingToRun) ou d'exécuter immidiatly.
Oh, et cela n'a rien à voir avec WPF, les Tâches sont une partie de la BCL
Cela est dû à votre déclaration ContinueWith. Cela crée une nouvelle Tâche qui vous attribuez à var newTask. Cette tâche, cependant, n'est jamais planifié ou exécuté lorsque la tâche d'origine ne se traduira pas une Exception. vous devez d'abord attribuer la tâche d'origine à newTask et ensuite appeler newTask.ContinueWith(...., TaskContinuationOptions.OnlyOnFaulted);
merci pour la réponse. ma façon actuelle étaient également à l'œuvre. il n'était pas comme en attente pour toujours. cependant j'ai modifié le code comme tu l'as dit et maintenant je vérifie, je vois en cours d'exécution. si je ne ressens pas de différence de vitesse. toujours la même. c'est sur l'analyse de pages web.
si la tâche est maintenant dans le sommeil, fait de son statut de retour à WaitingForActivation?
OriginalL'auteur Polity