diff options
Diffstat (limited to 'man-pages-posix-2003/man3p/pthread_detach.3p')
-rw-r--r-- | man-pages-posix-2003/man3p/pthread_detach.3p | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/man-pages-posix-2003/man3p/pthread_detach.3p b/man-pages-posix-2003/man3p/pthread_detach.3p new file mode 100644 index 0000000..26a9e12 --- /dev/null +++ b/man-pages-posix-2003/man3p/pthread_detach.3p @@ -0,0 +1,100 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "PTHREAD_DETACH" 3P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" pthread_detach +.SH PROLOG +This manual page is part of the POSIX Programmer's Manual. +The Linux implementation of this interface may differ (consult +the corresponding Linux manual page for details of Linux behavior), +or the interface may not be implemented on Linux. +.SH NAME +pthread_detach \- detach a thread +.SH SYNOPSIS +.LP +\fB#include <pthread.h> +.br +.sp +int pthread_detach(pthread_t\fP \fIthread\fP\fB); \fP +\fB +.br +\fP +.SH DESCRIPTION +.LP +The \fIpthread_detach\fP() function shall indicate to the implementation +that storage for the thread \fIthread\fP can be +reclaimed when that thread terminates. If \fIthread\fP has not terminated, +\fIpthread_detach\fP() shall not cause it to +terminate. The effect of multiple \fIpthread_detach\fP() calls on +the same target thread is unspecified. +.SH RETURN VALUE +.LP +If the call succeeds, \fIpthread_detach\fP() shall return 0; otherwise, +an error number shall be returned to indicate the +error. +.SH ERRORS +.LP +The \fIpthread_detach\fP() function shall fail if: +.TP 7 +.B EINVAL +The implementation has detected that the value specified by \fIthread\fP +does not refer to a joinable thread. +.TP 7 +.B ESRCH +No thread could be found corresponding to that specified by the given +thread ID. +.sp +.LP +The \fIpthread_detach\fP() function shall not return an error code +of [EINTR]. +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.LP +None. +.SH APPLICATION USAGE +.LP +None. +.SH RATIONALE +.LP +The \fIpthread_join\fP() or \fIpthread_detach\fP() functions should +eventually be +called for every thread that is created so that storage associated +with the thread may be reclaimed. +.LP +It has been suggested that a "detach" function is not necessary; the +\fIdetachstate\fP thread creation attribute is +sufficient, since a thread need never be dynamically detached. However, +need arises in at least two cases: +.IP " 1." 4 +In a cancellation handler for a \fIpthread_join\fP() it is nearly +essential to +have a \fIpthread_detach\fP() function in order to detach the thread +on which \fIpthread_join\fP() was waiting. Without it, it would be +necessary to have the handler do +another \fIpthread_join\fP() to attempt to detach the thread, which +would both delay +the cancellation processing for an unbounded period and introduce +a new call to \fIpthread_join\fP(), which might itself need a cancellation +handler. A dynamic detach is +nearly essential in this case. +.LP +.IP " 2." 4 +In order to detach the "initial thread" (as may be desirable in processes +that set up server threads). +.LP +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIpthread_join\fP(), the Base Definitions volume of IEEE\ Std\ 1003.1-2001, +\fI<pthread.h>\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |