xref: /freebsd/share/man/man3/pthread_cond_init.3 (revision d8a7868820265181ac2d938dcbcc10c3f199d583)
11fbdc08dSPoul-Henning Kamp.\" Copyright (c) 1997 Brian Cully <shmit@kublai.com>
21fbdc08dSPoul-Henning Kamp.\" All rights reserved.
31fbdc08dSPoul-Henning Kamp.\"
41fbdc08dSPoul-Henning Kamp.\" Redistribution and use in source and binary forms, with or without
51fbdc08dSPoul-Henning Kamp.\" modification, are permitted provided that the following conditions
61fbdc08dSPoul-Henning Kamp.\" are met:
71fbdc08dSPoul-Henning Kamp.\" 1. Redistributions of source code must retain the above copyright
81fbdc08dSPoul-Henning Kamp.\"    notice, this list of conditions and the following disclaimer.
91fbdc08dSPoul-Henning Kamp.\" 2. Redistributions in binary form must reproduce the above copyright
101fbdc08dSPoul-Henning Kamp.\"    notice, this list of conditions and the following disclaimer in the
111fbdc08dSPoul-Henning Kamp.\"    documentation and/or other materials provided with the distribution.
121fbdc08dSPoul-Henning Kamp.\" 3. Neither the name of the author nor the names of any co-contributors
131fbdc08dSPoul-Henning Kamp.\"    may be used to endorse or promote products derived from this software
141fbdc08dSPoul-Henning Kamp.\"    without specific prior written permission.
151fbdc08dSPoul-Henning Kamp.\"
161fbdc08dSPoul-Henning Kamp.\" THIS SOFTWARE IS PROVIDED BY JOHN BIRRELL AND CONTRIBUTORS ``AS IS'' AND
171fbdc08dSPoul-Henning Kamp.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
181fbdc08dSPoul-Henning Kamp.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
191fbdc08dSPoul-Henning Kamp.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
201fbdc08dSPoul-Henning Kamp.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
211fbdc08dSPoul-Henning Kamp.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
221fbdc08dSPoul-Henning Kamp.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
231fbdc08dSPoul-Henning Kamp.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
241fbdc08dSPoul-Henning Kamp.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
251fbdc08dSPoul-Henning Kamp.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
261fbdc08dSPoul-Henning Kamp.\" SUCH DAMAGE.
271fbdc08dSPoul-Henning Kamp.\"
287f3dea24SPeter Wemm.\" $FreeBSD$
29fbc400a6SNik Clayton.\"
301fbdc08dSPoul-Henning Kamp.Dd July 28, 1998
311fbdc08dSPoul-Henning Kamp.Dt PTHREAD_COND_INIT 3
321fbdc08dSPoul-Henning Kamp.Os BSD 4
331fbdc08dSPoul-Henning Kamp.Sh NAME
341fbdc08dSPoul-Henning Kamp.Nm pthread_cond_init
351fbdc08dSPoul-Henning Kamp.Nd create a condition variable
36d8a78688SAlexey Zelkin.Sh LIBRARY
37d8a78688SAlexey Zelkin.Lb libc_r
381fbdc08dSPoul-Henning Kamp.Sh SYNOPSIS
391fbdc08dSPoul-Henning Kamp.Fd #include <pthread.h>
401fbdc08dSPoul-Henning Kamp.Ft int
4130b85439SBruce Evans.Fn pthread_cond_init "pthread_cond_t *cond" "const pthread_condattr_t *attr"
421fbdc08dSPoul-Henning Kamp.Sh DESCRIPTION
431fbdc08dSPoul-Henning KampThe
441fbdc08dSPoul-Henning Kamp.Fn pthread_cond_init
451fbdc08dSPoul-Henning Kampfunction creates a new condition variable, with attributes specified with
461fbdc08dSPoul-Henning Kamp.Fa attr .
471fbdc08dSPoul-Henning KampIf
481fbdc08dSPoul-Henning Kamp.Fa attr
491fbdc08dSPoul-Henning Kampis NULL the default attributes are used.
501fbdc08dSPoul-Henning Kamp.Sh RETURN VALUES
511fbdc08dSPoul-Henning KampIf successful, the
521fbdc08dSPoul-Henning Kamp.Fn pthread_cond_init
531fbdc08dSPoul-Henning Kampfunction will return zero and put the new condition variable id into
541fbdc08dSPoul-Henning Kamp.Fa cond ,
551fbdc08dSPoul-Henning Kampotherwise an error number will be returned to indicate the error.
561fbdc08dSPoul-Henning Kamp.Sh ERRORS
571fbdc08dSPoul-Henning Kamp.Fn pthread_cond_init
581fbdc08dSPoul-Henning Kampwill fail if:
591fbdc08dSPoul-Henning Kamp.Bl -tag -width Er
601fbdc08dSPoul-Henning Kamp.It Bq Er EINVAL
611fbdc08dSPoul-Henning KampThe value specified by
621fbdc08dSPoul-Henning Kamp.Fa attr
631fbdc08dSPoul-Henning Kampis invalid.
641fbdc08dSPoul-Henning Kamp.It Bq Er ENOMEM
651fbdc08dSPoul-Henning KampThe process cannot allocate enough memory to create another condition
661fbdc08dSPoul-Henning Kampvariable.
671fbdc08dSPoul-Henning Kamp.It Bq Er EAGAIN
681fbdc08dSPoul-Henning KampThe temporarily lacks the resources to create another condition variable.
691fbdc08dSPoul-Henning Kamp.El
701fbdc08dSPoul-Henning Kamp.Pp
711fbdc08dSPoul-Henning Kamp.Sh SEE ALSO
72acd80190SWolfram Schneider.Xr pthread_cond_broadcast 3 ,
731fbdc08dSPoul-Henning Kamp.Xr pthread_cond_destroy 3 ,
741fbdc08dSPoul-Henning Kamp.Xr pthread_cond_signal 3 ,
75acd80190SWolfram Schneider.Xr pthread_cond_timedwait 3 ,
76acd80190SWolfram Schneider.Xr pthread_cond_wait 3
771fbdc08dSPoul-Henning Kamp.Sh STANDARDS
781fbdc08dSPoul-Henning Kamp.Fn pthread_cond_init
798ac3b85eSAlexander Langerconforms to ISO/IEC 9945-1 ANSI/IEEE
801fbdc08dSPoul-Henning Kamp.Pq Dq Tn POSIX
818ac3b85eSAlexander LangerStd 1003.1 Second Edition 1996-07-12.
82