Главная » 2017 » Ноябрь » 19 » man 2 gettid
22:30
man 2 gettid

SEO sprint - Всё для максимальной раскрутки!





ИМЯ


gettid - получить идентификатор нити



ОБЗОР


#include <sys/types.h>

pid_t gettid(void);

Замечание: в glibc нет обёрточной функции для данного системного вызова; смотрите
ЗАМЕЧАНИЯ.



ОПИСАНИЕ


gettid() возвращает идентификатор нити вызвавшего процесса (TID). В случае
процесса с одной нитью он эквивалентен идентификатору процесса (PID, возвращаемому
getpid(2)). В случае процесса с множеством нитей все нити имеют одинаковый
идентификатор процесса PID, но каждый из них имеет уникальный идентификатор нити
TID. Для получения подробной информации см. обсуждение CLONE_THREAD clone(2).



ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ


При успешном выполнении возвращается идентификатор нити вызывающего процесса.



ОШИБКИ


Этот системный вызов всегда выполняется успешно.



ВЕРСИИ


Вызов gettid() впервые появился в Linux в ядре версии 2.4.11.



СООТВЕТСТВИЕ СТАНДАРТАМ


Вызов gettid() является специфичным для Linux и не должен использоваться в
переносимых программах.



ЗАМЕЧАНИЯ


В glibc нет обёртки для данного системного вызова; запускайте его с помощью
syscall(2).

Идентификатор нити, возвращаемый этим вызовом, не является идентификатором нити
POSIX (т.е., значением с произвольной структурой, возвращаемым pthread_self(3)).

В новой группе нитей, созданной вызовом clone(2) без флага CLONE_THREAD (или новый
процесс, созданный fork(2)), новый процесс является лидером группы нитей, и ID
этой группы нитей (значение, возвращаемое getpid(2)) совпадает с ID этой нити
(значение, возвращаемое gettid()).



СМОТРИТЕ ТАКЖЕ


capget(2), clone(2), fcntl(2), fork(2), getpid(2), get_robust_list(2),
ioprio_set(2), perf_event_open(2), sched_setaffinity(2), sched_setparam(2),
sched_setscheduler(2), tgkill(2), timer_create(2)



Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 424 | Добавил: Администратор | Рейтинг: 0.0/0
Всего комментариев: 0
avatar