Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Fonction at_quick_exit (C11)

La fonction atoll La fonction bsearch


Entête à inclure

#include <stdlib.h>  // <cstdlib> en C++

Fonction at_quick_exit (C11)

int at_quick_exit( void ( * function ) (void) );

Cette fonction, introduite par le standard C ISO 2011 (C11), permet d'ajouter une fonction qui sera exécutée suite à un appel à la fonction quick_exit pour sortir du processus en cours. Lors d'une sortie rapide, les tâches habituelles de finalisation du processus ne seront pas exécutées.

il est possible d'utiliser cette fonction plusieurs fois, et donc d'enregistrer plusieurs functions à exécuter en sortie du processus. Dans ce cas, les fonctions seront invoquées dans l'ordre inverse ou elles ont été enregistrées.
tant que possible préférrez une sortie normale du processus afin de garantir l'exécution de toutes les tâches de finalisation dépendantes du système : flush et fermetures des flux, suppression des fichiers temporaires, ...

Paramètres

Valeur de retour

La valeur 0 est revoyée si la fonction est correctement ajoutée. Une valeur non nulle est renvoyée dans le cas inverse.

Exemple de code

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
#include <stdio.h>
#include <stdlib.h>

void quickExitFunction1() {
    puts( "Première fonction de sortie rapide enregistrée" );
}

void quickExitFunction2() {
    puts( "Seconde fonction de sortie rapide enregistrée" );
}


int main() {

    // Enregistrement de fonctions de rappels de sortie rapide
    at_quick_exit( quickExitFunction1 );
    at_quick_exit( quickExitFunction2 );


    // Demande de sortie rapide
    quick_exit( 0 );

    return EXIT_SUCCESS;
}
Exemple d'utilisation de la fonction at_quick_exit

Et voici les résultats produits par cet exemple :

$> gcc -o sample sample.c
$> ./sample
Seconde fonction de sortie rapide enregistrée
Première fonction de sortie rapide enregistrée
$>

Sujets connexes

<stdlib.h>
abort
atexit
exit
_Exit
quick_exit


La fonction atoll La fonction bsearch