Syntaxe
Termine l’image en cours et reprend à la suivante, comme Sync(). Son nom se lit bien dans une tâche.
YieldTask()À savoir
- Les parenthèses sont obligatoires :
YIELDTASKseul est refusé. - Il ne cède que là où le programme peut attendre : dans le
DO … LOOPde premier niveau, dans un programme qui contientEND, ou dans une étiquette. Il tient lieu du Sync() qu’exige unDO … LOOP. - Dans une étiquette, mettez-le sur sa propre ligne, sans commentaire derrière.
IF … THEN YieldTask()ouYieldTask() ' commentcompilent, mais le programme ne peut pas démarrer. Mettez le commentaire sur la ligne au-dessus. - C’est un point où
CANCELTASKarrête la tâche. - Dans une
FUNCTION, il ne cède pas.
Exemple
frames = 0counter AS TASKHANDLESTARTTASK counter, CountFramesAWAITTASK counterConsole("frames: " + Str(frames)) ' frames: 5ENDCountFrames: FOR i = 1 TO 5 frames = frames + 1 ' hand over until the next frame YieldTask() NEXTRETURN 0Dans le manuel : La boucle de jeu et les tâches