pthread_kill(3) Library Functions Manual pthread_kill(3)

pthread_kill - trimite un semnal către un fir de execuție

Biblioteca de fire de execuție POSIX (libpthread, -lpthread)

#include <signal.h>
int pthread_kill(pthread_t thread, int sig);
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

pthread_kill():

    _POSIX_C_SOURCE >= 199506L || _XOPEN_SOURCE >= 500

Funcția pthread_kill() trimite semnalul sig către thread, un fir de execuție în același proces cu apelantul. Semnalul este direcționat în mod asincron către thread.

Dacă sig este 0, atunci nu se trimite niciun semnal, dar verificarea erorilor se efectuează în continuare.

În caz de succes, pthread_kill() returnează 0; în caz de eroare, returnează un număr de eroare și nu se trimite niciun semnal.

A fost specificat un semnal nevalid.

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
pthread_kill() Siguranța firelor MT-Safe

Implementarea glibc a pthread_kill() dă o eroare (EINVAL) la încercările de a trimite oricare dintre semnalele în timp real utilizate intern de către implementarea NPTL. Pentru detalii, consultați nptl(7).

POSIX.1-2008 recomandă ca, în cazul în care o implementare detectează utilizarea unui ID de fir de execuție după terminarea duratei de viață a acestuia, pthread_kill() să returneze eroarea ESRCH. Implementarea glibc returnează această eroare în cazurile în care poate fi detectat un ID de fir de execuție nevalid. Dar rețineți, de asemenea, că POSIX spune că o încercare de a utiliza un ID de fir de execuție a cărui durată de viață s-a încheiat produce un comportament nedefinit, iar o încercare de a utiliza un ID de fir de execuție nevalid într-un apel la pthread_kill() poate provoca, de exemplu, o eroare de segmentare.

POSIX.1-2008.

POSIX.1-2001.

Dispozițiile semnalelor sunt la nivelul întregului proces: dacă este instalat un gestionar de semnal, acesta va fi invocat în firul thread, dar dacă dispoziția semnalului este "stop", "continue" sau "terminate", această acțiune va afecta întregul proces.

kill(2), sigaction(2), sigpending(2), pthread_self(3), pthread_sigmask(3), raise(3), pthreads(7), signal(7)

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.9.1