PTHREAD_SELF(3)

ИМЯ
pthread_self - возвращает ID вызвавшей нити

ОБЗОР
#include <pthread.h>

pthread_t pthread_self(void);

Компилируется и компонуется вместе с -pthread.

ОПИСАНИЕ
Функция pthread_self() возвращает идентификатор вызвавшей нити. Это значение совпадает с возвращаемым в *thread вызовом pthread_create(3) при создании этой нити.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Данная функция всегда завершается успешно, возвращая идентификатор вызвавшей нити.

ОШИБКИ
Данная функция всегда завершается успешно.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
pthread_self() | Безвредность в нитях | MT-Safe

СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1-2001, POSIX.1-2008.

ЗАМЕЧАНИЯ
В POSIX.1 предоставляет реализации большую свободу выбора типа, используемого под идентификатор нити; например, допускается представление как виде целого числа так и структуры. Поэтому переменные типа pthread_t нельзя сравнивать оператором равенства C (==); для этого предназначена функция pthread_equal(3).

Состав идентификаторов нити следует считать «чёрным ящиком»: все попытки использовать ID нити кроме как в вызовах pthreads являются непереносимыми и могут приводить к непредсказуемым результатам.

Для идентификаторов нити гарантируется их уникальность только внутри процесса. Идентификатор нити может использоваться повторно после присоединения завершённой нити или завершения отключённой нити.

Идентификатор нити, возвращаемый pthread_self() не тоже самое что идентификатор нити возвращаемый вызовом ядра gettid(2).

СМОТРИТЕ ТАКЖЕ
pthread_create(3), pthread_equal(3), pthreads(7)