UpsKrn.ArreterProgramme

Procedure Habilitation ArreterProgramme(CodeRetour : Entier=0)

Procedure Habilitation ArreterProgramme(NomDuProgramme : Caractere, ForcerArret : Booleen)

Description

La procédure ArreterProgramme permet d'arrêter le programme sans que son exécution se termine jusqu'à la dernière instruction de Principal. En ce cas, l'exception ArretProgramme est lancée par Up ! Kernel pour chaque tâche en cours.

Si cette exception n'est pas rattrapée, la tâche s'arrête et le code de retour de la tâche a pour valeur le paramètre d'ArreterProgramme. Si cette exception est rattrapée, la tâche continue à l'instruction qui suit le rattrapage.

Le processus s'arrête dès que toutes les tâches sont arrêtées. Le code retour du processus est alors le code retour de la tâche principale.

ArreterProgramme permet également d'arrêter un autre programme en technologie Up ! Virtual Technical Machine que le programme courant. Cet arrêt est propre puisqu'il s'effectue par l'envoie d'une exception permettant au programme d'être informé de l'arrêt et de prendre les mesures nécessaires.

Si le paramètre Forcer a pour valeur Faux, alors l'exception ArretProgramme est envoyée. En ce cas, le programme à arrêter a la possibilité de rattraper l'exception afin de ne pas vouloir s'arrêter. Si le paramètre Forcer a pour valeur Vrai, alors une exception privée d'Up ! Kernel est envoyée. En ce cas, le service n'a la possibilité de rattraper l'exception, et l'arrêt est alors obligatoire. Ce dernier cas doit être considéré comme une mesure d'urgence.

Exemple

Principal
/*******/
Debut
...
ArreterProgramme(10);
/* Une erreur a été trouvée, donc on arrête le programme. */
...
Fin Principal

Traduction

---------