Provided by: manpages-ro-dev_4.21.0-2_all bug

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)

REZUMAT

       #include <pthread.h>

       void pthread_cleanup_push_defer_np(void (*routine)(void *), void *arg);
       void pthread_cleanup_pop_restore_np(int execute);

   Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

       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

       Aceste funcții sunt extensii GNU nestandardizate; de aici și sufixul „_np” („neportabilă”) din nume.

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   creată   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.

Pagini de manual de Linux 6.03                  30 octombrie 2022               pthread_cleanup_push_defer_np(3)