ThreadDetach, ThreadDetach_r
![]() |
![]() |
![]() |
![]() |
ThreadDetach(), ThreadDetach_r()
Detach a thread from a process
Synopsis:
#include <sys/neutrino.h> int ThreadDetach( int tid ); int ThreadDetach_r( int tid );
Arguments:
- tid
- The ID of the thread that you want to detach, as returned by ThreadCreate(), or 0 to detach the current thread.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
These kernel calls detach the thread specified by tid. If tid is zero, the calling thread is used. Once detached, attempts to call ThreadJoin() on tid fail. When a detached thread terminates, its termination status is discarded and all its resources are released.
The ThreadDetach() and ThreadDetach_r() functions are identical, except in the way they indicate errors. See the Returns section for details.
Blocking states
These calls don't block.
Returns:
The only difference between these functions is the way they indicate errors:
- ThreadDetach()
- If an error occurs, the function returns -1 and sets errno. Any other value returned indicates success.
- ThreadDetach_r()
- Returns EOK on success. This function does NOT set errno. If an error occurs, the function can return any value listed in the Errors section.
Errors:
- EINVAL
- The thread is already detached.
- ESRCH
- The thread indicated by tid doesn't exist.
Classification:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
See also:
pthread_detach(), ThreadCreate(), ThreadJoin()
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)

