TerminateJobObject, fonction (jobapi2.h)

Arrête tous les processus actuellement associés au travail. Si le travail est imbriqué, cette fonction met fin à tous les processus actuellement associés au travail et à tous ses travaux enfants dans la hiérarchie.

Syntaxe

BOOL TerminateJobObject(
  [in] HANDLE hJob,
  [in] UINT   uExitCode
);

Paramètres

[in] hJob

Handle du travail dont les processus seront arrêtés. La fonction CreateJobObject ou OpenJobObject retourne ce handle. Ce handle doit avoir le droit d’accès JOB_OBJECT_TERMINATE. Pour plus d’informations, consultez Sécurité et droits d’accès aux objets de travail.

Le handle de chaque processus de l’objet de travail doit avoir le droit d’accès PROCESS_TERMINATE. Pour plus d’informations, consultez Traiter les droits de sécurité et d’accès.

[in] uExitCode

Code de sortie à utiliser par tous les processus et threads dans l’objet de travail. Utilisez la fonction GetExitCodeProcess pour récupérer la valeur de sortie de chaque processus. Utilisez la fonction GetExitCodeThread pour récupérer la valeur de sortie de chaque thread.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Il n’est pas possible pour les processus associés au travail de reporter ou de gérer l’arrêt. C’est comme si TerminateProcess était appelé pour chaque processus associé au travail.

L’arrêt d’un travail imbriqué met également fin à tous les objets de travail enfants. Les ressources utilisées par les travaux terminés sont facturées dans la chaîne de travaux parente dans la hiérarchie.

Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT comme 0x0500 ou version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête jobapi2.h (inclure Windows.h, Jobapi2.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CreateJobObject

Objets de travail

OpenJobObject

Fonctions de processus et de thread

TerminateProcess