1.\" $OpenBSD: pthread_barrier_wait.3,v 1.4 2015/09/22 08:22:05 sobrado Exp $ 2.\" 3.\" Copyright (c) 2012 Paul Irofti <pirofti@openbsd.org> 4.\" 5.\" Permission to use, copy, modify, and distribute this software for any 6.\" purpose with or without fee is hereby granted, provided that the above 7.\" copyright notice and this permission notice appear in all copies. 8.\" 9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16.\" 17.\" 18.Dd $Mdocdate: September 22 2015 $ 19.Dt PTHREAD_BARRIER_WAIT 3 20.Os 21.Sh NAME 22.Nm pthread_barrier_wait 23.Nd synchronize at a barrier 24.Sh SYNOPSIS 25.In pthread.h 26.Ft int 27.Fn pthread_barrier_wait "pthread_barrier_t *barrier" 28.Sh DESCRIPTION 29The 30.Fn pthread_barrier_wait 31function blocks the calling thread until the required number of threads 32call 33.Fn pthread_barrier_wait , 34as specified at the object's initialization. 35.Sh RETURN VALUES 36If successful, 37.Fn pthread_barrier_wait 38returns 39.Dv PTHREAD_BARRIER_SERIAL_THREAD 40for a single arbitrary thread and zero for each of the other threads; 41otherwise an error number is returned to indicate the error. 42.Sh ERRORS 43.Fn pthread_barrier_wait 44will fail if: 45.Bl -tag -width Er 46.It Bq Er EINVAL 47The value specified by 48.Fa barrier 49is invalid. 50.El 51.Sh SEE ALSO 52.Xr pthread_barrier_init 3 , 53.Xr pthread_barrierattr_getpshared 3 , 54.Xr pthread_barrierattr_init 3 55.Sh STANDARDS 56.Fn pthread_barrier_wait 57conforms to 58.St -p1003.1-2008 . 59