Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pthread_exit(3) [osx man page]

PTHREAD_EXIT(3) 					   BSD Library Functions Manual 					   PTHREAD_EXIT(3)

NAME
pthread_exit -- terminate the calling thread SYNOPSIS
#include <pthread.h> void pthread_exit(void *value_ptr); DESCRIPTION
The pthread_exit() function terminates the calling thread and makes the value value_ptr available to any successful join with the terminating thread. Any cancellation cleanup handlers that have been pushed and are not yet popped are popped in the reverse order that they were pushed and then executed. After all cancellation handlers have been executed, if the thread has any thread-specific data, appropriate destructor functions are called in an unspecified order. Thread termination does not release any application visible process resources, including, but not limited to, mutexes and file descriptors, nor does it perform any process level cleanup actions, including, but not limited to, calling atexit() routines that may exist. An implicit call to pthread_exit() is made when a thread other than the thread in which main() was first invoked returns from the start rou- tine that was used to create it. The function's return value serves as the thread's exit status. The behavior of pthread_exit() is undefined if called from a cancellation handler or destructor function that was invoked as the result of an implicit or explicit call to pthread_exit(). After a thread has terminated, the result of access to local (auto) variables of the thread is undefined. Thus, references to local vari- ables of the exiting thread should not be used for the pthread_exit() value_ptr parameter value. The process will exit with an exit status of 0 after the last thread has been terminated. The behavior is as if the implementation called exit() with a zero argument at thread termination time. RETURN VALUES
The pthread_exit() function cannot return to its caller. ERRORS
None. SEE ALSO
_exit(2), exit(3), pthread_create(3), pthread_join(3) STANDARDS
pthread_exit() conforms to ISO/IEC 9945-1:1996 (``POSIX.1''). BSD
April 4, 1996 BSD

Check Out this Related Man Page

pthread_exit(3T)														  pthread_exit(3T)

NAME
pthread_exit() - cause the calling thread to terminate SYNOPSIS
PARAMETERS
value_ptr The calling thread's exit status. DESCRIPTION
terminates the calling thread. The calling thread returns an exit status in value_ptr. This value is returned to a joining thread calling on the terminating thread. Only threads created with the detachstate attribute value can return an exit status to The exit status of a detached thread is lost when the thread terminates. When a thread terminates, process-shared resources are not released. Examples of process-shared resources include mutexes, condition vari- ables, semaphores, message queue descriptors, and file descriptors. The routines are not called when a thread terminates as this is a process termination action. An implicit call to is made when a thread returns from its start routine. The function's return value serves as the thread's exit status (see pthread_create(3T)). If the main thread returns from without calling the process will exit using the return value from as the exit status. If the main thread calls the process will continue executing until the last thread terminates or a thread calls After the last thread in the process terminates, the process will exit with an exit status of zero. Any installed cancellation cleanup handlers will be popped and executed in the reverse order that they were installed. After the cancella- tion cleanup handlers have been executed, if the thread has any non-NULL thread-specific data values with associated destructor functions, the destructor functions are called. The order in which these destructor functions are called is unspecified. Calling from a cancellation cleanup handler or destructor function that was invoked because of thread termination results in undefined behavior. After a thread has terminated, the result of access to local (auto) variables of the thread is undefined. The terminating thread should not use local variables for the value_ptr parameter value. RETURN VALUE
None. ERRORS
None, this function does not return. AUTHOR
was derived from the IEEE POSIX P1003.1c standard. SEE ALSO
pthread_create(3T), pthread_join(3T), exit(2), wait(2). STANDARDS CONFORMANCE
Pthread Library pthread_exit(3T)
Man Page