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  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  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⟩.