[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    PTHREAD_SELF(3) manual page Table of Contents

Name

pthread_self - obtain ID of the calling thread

Synopsis


#include <pthread.h>pthread_t pthread_self(void);
Compile and link with -pthread.

Description

The pthread_self() function returns the ID of the calling thread. This is the same value that is returned in *thread in the pthread_create(3) call that created this thread.

Return Value

This function always succeeds, returning the calling thread’s ID.

Errors

This function always succeeds.

Attributes

Multithreading (see pthreads(7) )

The pthread_self() function is thread-safe.

Conforming to

POSIX.1-2001.

Notes

POSIX.1 allows an implementation wide freedom in choosing the type used to represent a thread ID; for example, representation using either an arithmetic type or a structure is permitted. Therefore, variables of type pthread_t can’t portably be compared using the C equality operator (==); use pthread_equal(3) instead.

Thread identifiers should be considered opaque: any attempt to use a thread ID other than in pthreads calls is nonportable and can lead to unspecified results.

Thread IDs are guaranteed to be unique only within a process. A thread ID may be reused after a terminated thread has been joined, or a detached thread has terminated.

The thread ID returned by pthread_self() is not the same thing as the kernel thread ID returned by a call to gettid(2) .

See Also

pthread_create(3) , pthread_equal(3) , pthreads(7)

Colophon

This page is part of release 3.78 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at http://www.kernel.org/doc/man-pages/.


Table of Contents