Changeset View
Changeset View
Standalone View
Standalone View
lib/libc/sys/thr_exit.2
- This file was added.
.\" Copyright (c) 2016 The FreeBSD Foundation, Inc. | |||||
.\" All rights reserved. | |||||
.\" | |||||
.\" This documentation was written by | |||||
.\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship | |||||
.\" from the FreeBSD Foundation. | |||||
.\" | |||||
.\" Redistribution and use in source and binary forms, with or without | |||||
.\" modification, are permitted provided that the following conditions | |||||
.\" are met: | |||||
.\" 1. Redistributions of source code must retain the above copyright | |||||
.\" notice, this list of conditions and the following disclaimer. | |||||
.\" 2. Redistributions in binary form must reproduce the above copyright | |||||
.\" notice, this list of conditions and the following disclaimer in the | |||||
.\" documentation and/or other materials provided with the distribution. | |||||
.\" | |||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND | |||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE | |||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |||||
.\" SUCH DAMAGE. | |||||
.\" | |||||
.\" $FreeBSD$ | |||||
.\" | |||||
.Dd May 5, 2016 | |||||
.Dt THR_EXIT 2 | |||||
.Os | |||||
.Sh NAME | |||||
.Nm thr_exit | |||||
.Nd terminate current thread | |||||
.Sh LIBRARY | |||||
.Lb libc | |||||
.Sh SYNOPSIS | |||||
.In sys/thr.h | |||||
.Ft void | |||||
.Fn thr_exit "long *state" | |||||
.Sh DESCRIPTION | |||||
The | |||||
.Fn thr_exit | |||||
system call terminates the current kernel-scheduled thread. | |||||
.Pp | |||||
If the | |||||
.Fa state | |||||
argument is not NULL, the location pointed to by the argument is | |||||
updated with an arbitrary non-zero value, and | |||||
.Xr _umtx_op 2 | |||||
emaste: what value?
if the specific value should not be relied on, "an arbitrary non-zero value" | |||||
.Dv UMTX_OP_WAKE | |||||
operation is consequently performed on the location. | |||||
.Pp | |||||
Attempts to terminate last thread in the process are silently ignored. | |||||
Use | |||||
.Xr _exit 2 | |||||
syscall to terminate the process. | |||||
.Sh RETURN VALUES | |||||
Done Inline Actionsterimate the process emaste: terimate the process | |||||
The function does not return any values. | |||||
A return from the function indicates that the calling thread was the | |||||
last one in the process. | |||||
.Sh SEE ALSO | |||||
Done Inline Actionslast one emaste: last one | |||||
.Xr _exit 2 , | |||||
.Xr thr_kill 2 , | |||||
.Xr thr_kill2 2 , | |||||
.Xr thr_new 2 , | |||||
.Xr thr_self 2 , | |||||
.Xr thr_set_name 2 , | |||||
.Xr _umtx_op 2 | |||||
.Sh STANDARDS | |||||
The | |||||
.Fn thr_exit | |||||
system call is non-standard and is used by the | |||||
.Lb libthr | |||||
to implement | |||||
.St -p1003.1-2001 | |||||
.Xr pthread(3) | |||||
functionality. |
what value?
if the specific value should not be relied on, "an arbitrary non-zero value"