table of contents
tkill(2) | System Calls Manual | tkill(2) |
NUME¶
tkill, tgkill - trimite un semnal către un fir de execuție
BIBLIOTECA¶
Biblioteca C standard (libc, -lc)
SINOPSIS¶
#include <signal.h> /* Definiția constantelor SIG* */ #include <sys/syscall.h> /* Definiția constantelor SYS* */ #include <unistd.h>
[[depreciat]] int syscall(SYS_tkill, pid_t tid, int sig);
#include <signal.h>
int tgkill(pid_t tgid, pid_t tid, int sig);
Notă: glibc nu oferă nici o funcție de învăluire pentru tkill(), fiind necesară utilizarea syscall(2).
DESCRIERE¶
tgkill() trimite semnalul sig la firul cu ID-ul firului tid din grupul de fire tgid; (în schimb, kill(2) poate fi utilizat pentru a trimite un semnal numai către un proces (adică un grup de fire) ca întreg, iar semnalul va fi transmis unui fir arbitrar din cadrul acelui proces).
tkill() este un predecesor învechit al lui tgkill(). Acesta permite doar specificarea ID-ului firului țintă, ceea ce poate duce la semnalarea firului greșit dacă un fir se termină și ID-ul său este reciclat. Evitați utilizarea acestui apel de sistem.
Acestea sunt interfețele brute de apelare a sistemului, destinate utilizării bibliotecii de fire interne.
VALOAREA RETURNATö
În caz de succes, se returnează zero. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.
ERORI-IEȘIRE¶
- EAGAIN
- Limita de resurse RLIMIT_SIGPENDING a fost atinsă, iar sig este un semnal în timp real.
- EAGAIN
- Memoria disponibilă în nucleu a fost insuficientă, iar sig este un semnal în timp real.
- EINVAL
- A fost specificat un ID de fir, un ID de grup de fire sau un semnal nevalid.
- EPERM
- Permisiune refuzată. Pentru permisiunile necesare, consultați kill(2).
- ESRCH
- Nu există niciun proces cu ID-ul firului specificat (și ID-ul grupului de fire).
STANDARDE¶
Linux.
ISTORIC¶
NOTE¶
A se vedea descrierea lui CLONE_THREAD în clone(2) pentru o explicație a grupurilor de fire.
CONSULTAȚI ȘI¶
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) |