pthread_detach(3) | Library Functions Manual | pthread_detach(3) |
NUME
pthread_detach - detașează un fir de execuție
BIBLIOTECA
Biblioteca de fire de execuție POSIX (libpthread, -lpthread)
SINOPSIS
#include <pthread.h>
int pthread_detach(pthread_t thread);
DESCRIERE
The pthread_detach() function marks the thread identified by thread as detached. When a detached thread terminates, its resources are automatically released back to the system without the need for another thread to join with the terminated thread.
Încercarea de a detașa un fir deja detașat are ca rezultat un comportament nespecificat.
VALOAREA RETURNATĂ
În caz de succes, pthread_detach() returnează 0; în caz de eroare, returnează un număr de eroare.
ERORI-IEȘIRE
ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare |
pthread_detach() | Siguranța firelor | MT-Safe |
STANDARDE
POSIX.1-2008.
ISTORIC
POSIX.1-2001.
NOTE
Odată ce un fir a fost detașat, acesta nu mai poate fi unit cu pthread_join(3) și nici nu mai poate fi unit din nou.
Un nou fir poate fi creat într-o stare detașată folosind pthread_attr_setdetachstate(3) pentru a stabili atributul detașat al argumentului attr din pthread_create(3).
Atributul „detached” (detașat) determină pur și simplu comportamentul sistemului atunci când se termină firul de execuție; acesta nu împiedică terminarea firului de execuție în cazul în care procesul se termină folosind exit(3) (sau, în mod echivalent, în cazul în care firul principal iese din rutina de apelare).
Fie pthread_join(3), fie pthread_detach() ar trebui să fie apelat pentru fiecare fir de execuție creat de o aplicație, astfel încât resursele de sistem pentru firul de execuție să poată fi eliberate; (Rețineți însă că resursele oricăror fire de execuție pentru care nu a fost efectuată una dintre aceste acțiuni vor fi eliberate la terminarea procesului).
EXEMPLE
Următoarea instrucțiune detașează firul de apelare:
pthread_detach(pthread_self());
CONSULTAȚI ȘI
pthread_attr_setdetachstate(3), pthread_cancel(3), pthread_create(3), pthread_exit(3), pthread_join(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 de Linux 6.8 |