2010-12-07 35 views

Répondre

5

Vous ne pouvez pas "mettre une tâche au premier plan" - c'est un serveur Web. Le serveur répond aux demandes du client.

Mais, vous avez plusieurs possibilités pour accomplir quelque chose de similaire:

  1. Utilisez le Channel API d'envoyer l'avis de client que le travail est terminé, ou un même les résultats du traitement.
  2. Ecrivez les informations d'état sur memcache ou le datastore et interrogez le client pour déterminer quand le travail est terminé.
+0

L'option 2 est probablement le moyen le plus simple de le faire. –

0

Cela ne fonctionnera pas directement comme vous le décrivez. Une fois qu'une tâche d'arrière-plan est démarrée, c'est une tâche d'arrière-plan pour toute son existence. Si vous souhaitez renvoyer certaines informations de la tâche d'arrière-plan à l'utilisateur, vous devrez l'ajouter au magasin de données et demander à un gestionnaire de premier plan de vérifier le magasin de données pour cette information.

Vous pouvez également utiliser l'API Channel pour qu'une tâche d'arrière-plan envoie des messages directement au navigateur, mais je ne suis pas sûr que cela fonctionnera ou non (je ne l'ai pas essayé).

Si vous donnez un peu plus d'informations sur exactement ce que vous essayez d'accomplir, je peux essayer de donner plus de détails sur la façon de le faire.