AWAITTASK

Instruction

Syntaxe

Met le code courant en pause jusqu’à la fin d’une tâche. Le moteur continue de dessiner les images pendant ce temps.

AWAITTASK <handle>

Les éléments

<handle>Un handle de tâche : une variable remplie par STARTTASK.

À savoir

  • Si la tâche a échoué, AWAITTASK lève l’erreur de la tâche. Interceptez-la avec TRY.
  • Sur une tâche annulée, il rend la main aussitôt, sans erreur.
  • AWAITTASK est une instruction. x = AWAITTASK job compile, mais le programme ne peut pas démarrer. Écrivez AWAITTASK job, puis x = TaskResult(job).
  • Refusé dans une FUNCTION : "AWAITTASK is not supported inside synchronous FUNCTION".
  • Dans un programme sans DO, un seul AWAITTASK n’importe où transforme tout le programme en un programme principal unique : les fonctions de cycle de vie comme update ne sont plus trouvées.
  • Dans une tâche, AWAITTASK n’est pas un point où CANCELTASK peut l’arrêter.

Exemple

job AS TASKHANDLESTARTTASK job, CountDownConsole("started")                           ' startedAWAITTASK jobConsole("result " + Str(TaskResult(job)))    ' result 42ENDCountDown:  FOR i = 3 TO 1 STEP -1    Console("tick " + Str(i))                ' tick 3, tick 2, tick 1    Wait(0.2)  NEXTRETURN 42