1.\" $NetBSD: _lwp_wait.2,v 1.7 2022/12/04 16:21:54 uwe Exp $ 2.\" 3.\" Copyright (c) 2003, 2020 The NetBSD Foundation, Inc. 4.\" All rights reserved. 5.\" 6.\" This code is derived from software contributed to The NetBSD Foundation 7.\" by Jason R. Thorpe of Wasabi Systems, Inc. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.Dd December 4, 2022 31.Dt _LWP_WAIT 2 32.Os 33.Sh NAME 34.Nm _lwp_wait 35.Nd wait for light-weight process termination 36.Sh LIBRARY 37.Lb libc 38.Sh SYNOPSIS 39.In lwp.h 40.Ft int 41.Fn _lwp_wait "lwpid_t wlwp" "lwpid_t *rlwp" 42.Sh DESCRIPTION 43.Fn _lwp_wait 44suspends execution of the calling LWP until the LWP specified by 45.Fa wlwp 46terminates. 47The specified LWP must not be detached. 48If 49.Fa wlwp 50is 0, then 51.Fn _lwp_wait 52waits for any undetached LWP in the current process. 53.Pp 54If 55.Fa rlwp 56is not 57.Dv NULL , 58then it points to the location where the LWP ID of 59the exited LWP is stored. 60.Sh RETURN VALUES 61.Rv -std _lwp_wait 62.Sh ERRORS 63.Fn _lwp_wait 64will fail if: 65.Bl -tag -width Er 66.It Bq Er ESRCH 67No LWP can be found in the current process corresponding to that 68specified by 69.Fa wlwp . 70.It Bq Er EDEADLK 71The calling LWP is the only LWP in the process. 72.It Bq Er EDEADLK 73The LWP ID specified by 74.Fa wlwp 75is the LWP ID of the calling LWP. 76.It Bq Er EINVAL 77The LWP specified by 78.Fa wlwp 79is detached. 80.It Bq Er EINTR 81.Fn _lwp_wait 82was interrupted by a caught signal, or the signal did not 83have the 84.Dv SA_RESTART 85flag set. 86.El 87.Sh SEE ALSO 88.Xr _lwp_create 2 , 89.Xr _lwp_exit 2 90.Sh HISTORY 91The 92.Fn _lwp_wait 93system call first appeared in 94.Nx 2.0 . 95