summaryrefslogtreecommitdiff
path: root/usr/src/man/man3c/thrd_exit.3c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/man/man3c/thrd_exit.3c')
-rw-r--r--usr/src/man/man3c/thrd_exit.3c64
1 files changed, 64 insertions, 0 deletions
diff --git a/usr/src/man/man3c/thrd_exit.3c b/usr/src/man/man3c/thrd_exit.3c
new file mode 100644
index 0000000000..3dcf682cd9
--- /dev/null
+++ b/usr/src/man/man3c/thrd_exit.3c
@@ -0,0 +1,64 @@
+.\"
+.\" This file and its contents are supplied under the terms of the
+.\" Common Development and Distribution License ("CDDL"), version 1.0.
+.\" You may only use this file in accordance with the terms of version
+.\" 1.0 of the CDDL.
+.\"
+.\" A full copy of the text of the CDDL should have accompanied this
+.\" source. A copy of the CDDL is also available via the Internet at
+.\" http://www.illumos.org/license/CDDL.
+.\"
+.\"
+.\" Copyright 2016 Joyent, Inc.
+.\"
+.Dd "Jan 13, 2015"
+.Dt THRD_EXIT 3C
+.Os
+.Sh NAME
+.Nm thrd_exit
+.Nd terminate a thread
+.Sh SYNOPSIS
+.In threads.h
+.Ft "_Noreturn void"
+.Fo thrd_exit
+.Fa "int res"
+.Fc
+.Sh DESCRIPTION
+The
+.Fn thrd_exit
+function terminates the calling thread, in a similar way that
+.Xr exit 3C
+terminates the calling process. If the calling thread has not been
+detached, then the exit status information provided in
+.Fa res
+is saved and can be retrieved by the use of the
+.Xr thrd_join 3C
+function.
+.Pp
+When the thread exits, all signals will be blocked and various
+destructors and clean up handlers will be called, such as those
+registered with
+.Xr tss_create 3C .
+The act of thread termination does not cause any process-wide resources,
+such as mutexes and file descriptors to be released.
+.Pp
+If a thread, other than the thread in which
+.Fn main
+was first invoked returns from its starting routine, it will implicitly
+call
+.Fn thrd_exit
+and set the return value to be its exit status.
+.Sh RETURN VALUES
+The
+.Fn thrd_exit
+function does not return, the calling thread is terminated.
+.Sh INTERFACE STABILITY
+.Sy Standard
+.Sh MT-LEVEL
+.Sy MT-Safe
+.Sh SEE ALSO
+.Xr pthread_exit 3C ,
+.Xr thr_exit 3C ,
+.Xr attributes 5 ,
+.Xr attributes 5 ,
+.Xr threads 5