Provided by:
manpages-fr-dev_3.27fr1.4-1_all 
NOM
pthread_cleanup_push_defer_np, pthread_cleanup_pop_restore_np - Empiler
et depiler les gestionnaires de nettoyage tout en preservant le mode
d'annulation
SYNOPSIS
#include <pthread.h>
void pthread_cleanup_push_defer_np(void (*routine)(void *),
void *arg);
void pthread_cleanup_pop_restore_np(int execute);
Compilez et effectuez l'edition des liens avec l'option -pthread.
DESCRIPTION
Ces fonctions operent de la meme facon que pthread_cleanup_push(3) et
pthread_cleanup_pop(3), a l'exception des differences decrites dans
cette page.
Comme pthread_cleanup_push(3), pthread_cleanup_push_defer_np() empile
routine sur la pile des gestionnaires de nettoyage du thread. De plus,
elle sauvegarde le mode actuel d'annulation, et le change en
<< deferred >> (retarde), consultez pthread_setcanceltype(3). Cela
garantit que le nettoyage a l'annulation sera appele meme si le mode
d'annulation etait a << asynchronous >> (asynchrone) avant l'appel.
Comme pthread_cleanup_pop(3), pthread_cleanup_pop_restore_np() depile
le gestionnaire de nettoyage depuis la pile des gestionnaires de
nettoyage du thread. De plus, elle remet le mode d'annulation a la
valeur qu'il avait lors de l'appel a pthread_cleanup_push_defer_np()
correspondant.
L'appelant doit verifier que les appels a ces fonctions sont apparies a
l'interieur de la meme fonction, et au meme niveau d'imbriquement
lexical. D'autres restrictions s'appliquent, comme explique dans
pthread_cleanup_push(3).
Cette sequence d'appels :
pthread_cleanup_push_defer_np(routine, arg);
pthread_cleanup_pop_restore_np(execute);
est equivalente a (mais en plus court et plus efficace) :
int oldtype;
pthread_cleanup_push(routine, arg);
pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype);
...
pthread_setcanceltype(oldtype, NULL);
pthread_cleanup_pop(execute);
CONFORMIT'E
Ces fonctions sont des extensions non standard GNU ; c'est la raison du
suffixe << _np >> (non portable) dans leur nom.
VOIR AUSSI
pthread_cancel(3), pthread_cleanup_push(3), pthread_setcancelstate(3),
pthread_testcancel(3), pthreads(7)
COLOPHON
Cette page fait partie de la publication 3.27 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Denis Barbier (2010).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.
Linux 4 decembre 200PTHREAD_CLEANUP_PUSH_DEFER_NP(3)