table of contents
pthread_cleanup_push_defer_np(3) | Library Functions Manual | pthread_cleanup_push_defer_np(3) |
NUME¶
pthread_cleanup_push_defer_npp, pthread_cleanup_pop_restore_np - gestionari „push” și „pop” (punere și scoatere) de curățare a anulării firelor în timp ce salvează tipul de anulabilitate
BIBLIOTECA¶
Biblioteca de fire de execuție POSIX (libpthread, -lpthread)
SINOPSIS¶
#include <pthread.h>
void pthread_cleanup_push_defer_np(void (*routine)(void *), void *arg); void pthread_cleanup_pop_restore_np(int execute);
pthread_cleanup_push_defer_np(), pthread_cleanup_pop_defer_np():
_GNU_SOURCE
DESCRIERE¶
Aceste funcții sunt identice cu pthread_cleanup_push(3) și pthread_cleanup_pop(3), cu excepția diferențelor menționate în această pagină.
La fel ca pthread_cleanup_push(3), pthread_cleanup_push_defer_np() plasează routine în stiva de gestionari de curățare a anulării firului. În plus, salvează, de asemenea, tipul curent de anulabilitate al firului și stabilește tipul de anulabilitate la „deferred” (amânat) (a se vedea pthread_setcanceltype(3)); acest lucru asigură că curățarea anulării va avea loc chiar dacă tipul de anulabilitate al firului era „asincron” înainte de apel.
La fel ca pthread_cleanup_pop(3), pthread_cleanup_pop_restore_np() scoate cel mai de sus gestionar de curățare din stiva de gestionari de curățare a anulării a firului. În plus, acesta restabilește tipul de anulabilitate al firului la valoarea sa de la momentul în care a avut loc pthread_cleanup_push_defer_np() corespunzător.
Apelantul trebuie să se asigure că apelurile la aceste funcții sunt împerecheate în cadrul aceleiași funcții și la același nivel de structurare lexicală. Se aplică alte restricții, astfel cum sunt descrise în pthread_cleanup_push(3).
Această secvență de apeluri:
pthread_cleanup_push_defer_np(routine, arg); pthread_cleanup_pop_restore_np(execute);
este echivalentă cu (dar mai scurtă și mai eficientă decât):
int oldtype; pthread_cleanup_push(routine, arg); pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype); ... pthread_setcanceltype(oldtype, NULL); pthread_cleanup_pop(execute);
STANDARDE¶
GNU; de aici și sufixul „_np” (neportabil) din denumiri.
ISTORIC¶
glibc 2.0
CONSULTAȚI ȘI¶
pthread_cancel(3), pthread_cleanup_push(3), pthread_setcancelstate(3), pthread_testcancel(3), pthreads(7)
TRADUCERE¶
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
2 mai 2024 | Pagini de manual Linux (nepublicate) |