PTHREAD_SELF(3) Руководство программиста Linux 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)

2017-09-15 Linux