166492cf0SYuri Pankov.\"
266492cf0SYuri Pankov.\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
366492cf0SYuri Pankov.\" permission to reproduce portions of its copyrighted documentation.
466492cf0SYuri Pankov.\" Original documentation from The Open Group can be obtained online at
5c10c16deSRichard Lowe.\" http://www.opengroup.org/bookstore/.
666492cf0SYuri Pankov.\"
766492cf0SYuri Pankov.\" The Institute of Electrical and Electronics Engineers and The Open
866492cf0SYuri Pankov.\" Group, have given us permission to reprint portions of their
966492cf0SYuri Pankov.\" documentation.
1066492cf0SYuri Pankov.\"
1166492cf0SYuri Pankov.\" In the following statement, the phrase ``this text'' refers to portions
1266492cf0SYuri Pankov.\" of the system documentation.
1366492cf0SYuri Pankov.\"
1466492cf0SYuri Pankov.\" Portions of this text are reprinted and reproduced in electronic form
1566492cf0SYuri Pankov.\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
1666492cf0SYuri Pankov.\" Standard for Information Technology -- Portable Operating System
1766492cf0SYuri Pankov.\" Interface (POSIX), The Open Group Base Specifications Issue 6,
1866492cf0SYuri Pankov.\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
1966492cf0SYuri Pankov.\" Engineers, Inc and The Open Group.  In the event of any discrepancy
2066492cf0SYuri Pankov.\" between these versions and the original IEEE and The Open Group
2166492cf0SYuri Pankov.\" Standard, the original IEEE and The Open Group Standard is the referee
2266492cf0SYuri Pankov.\" document.  The original Standard can be obtained online at
2366492cf0SYuri Pankov.\" http://www.opengroup.org/unix/online.html.
2466492cf0SYuri Pankov.\"
2566492cf0SYuri Pankov.\" This notice shall appear on any product containing this material.
2666492cf0SYuri Pankov.\"
2766492cf0SYuri Pankov.\" The contents of this file are subject to the terms of the
2866492cf0SYuri Pankov.\" Common Development and Distribution License (the "License").
2966492cf0SYuri Pankov.\" You may not use this file except in compliance with the License.
3066492cf0SYuri Pankov.\"
3166492cf0SYuri Pankov.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
3266492cf0SYuri Pankov.\" or http://www.opensolaris.org/os/licensing.
3366492cf0SYuri Pankov.\" See the License for the specific language governing permissions
3466492cf0SYuri Pankov.\" and limitations under the License.
3566492cf0SYuri Pankov.\"
3666492cf0SYuri Pankov.\" When distributing Covered Code, include this CDDL HEADER in each
3766492cf0SYuri Pankov.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
3866492cf0SYuri Pankov.\" If applicable, add the following below this CDDL HEADER, with the
3966492cf0SYuri Pankov.\" fields enclosed by brackets "[]" replaced with your own identifying
4066492cf0SYuri Pankov.\" information: Portions Copyright [yyyy] [name of copyright owner]
4166492cf0SYuri Pankov.\"
4266492cf0SYuri Pankov.\"
4366492cf0SYuri Pankov.\" Copyright (c) 2001, The IEEE and The Open Group.  All Rights Reserved.
4466492cf0SYuri Pankov.\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
45*7bb0eb34SAndy Fiddaman.\" Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
4666492cf0SYuri Pankov.\"
47*7bb0eb34SAndy Fiddaman.Dd February 19, 2022
48*7bb0eb34SAndy Fiddaman.Dt PTHREAD.H 3HEAD
49*7bb0eb34SAndy Fiddaman.Os
50*7bb0eb34SAndy Fiddaman.Sh NAME
51*7bb0eb34SAndy Fiddaman.Nm pthread.h ,
52*7bb0eb34SAndy Fiddaman.Nm pthread
53*7bb0eb34SAndy Fiddaman.Nd threads
54*7bb0eb34SAndy Fiddaman.Sh SYNOPSIS
55*7bb0eb34SAndy Fiddaman.In pthread.h
56*7bb0eb34SAndy Fiddaman.Sh DESCRIPTION
57*7bb0eb34SAndy FiddamanThe
58*7bb0eb34SAndy Fiddaman.In pthread.h
59*7bb0eb34SAndy Fiddamanheader defines the following symbols:
60*7bb0eb34SAndy Fiddaman.Pp
61*7bb0eb34SAndy Fiddaman.Bl -inset -offset Ds -compact
62*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_BARRIER_SERIAL_THREAD
63*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CANCEL_ASYNCHRONOUS
64*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CANCEL_ENABLE
65*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CANCEL_DEFERRED
66*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CANCEL_DISABLE
67*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CANCELED
68*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_COND_INITIALIZER
69*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CREATE_DETACHED
70*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_CREATE_JOINABLE
71*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_EXPLICIT_SCHED
72*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
73*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_INHERIT_SCHED
74*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_DEFAULT
75*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_ERRORCHECK
76*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_INITIALIZER
77*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_NORMAL
78*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_RECURSIVE
79*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_ROBUST
80*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_MUTEX_STALLED
81*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_ONCE_INIT
82*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_PRIO_INHERIT
83*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_PRIO_NONE
84*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_PRIO_PROTECT
85*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_PROCESS_SHARED
86*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_PROCESS_PRIVATE
87*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
88*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_RWLOCK_INITIALIZER
89*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_SCOPE_PROCESS
90*7bb0eb34SAndy Fiddaman.It Dv PTHREAD_SCOPE_SYSTEM
91*7bb0eb34SAndy Fiddaman.El
92*7bb0eb34SAndy Fiddaman.Pp
93*7bb0eb34SAndy FiddamanThe types listed below are defined as described in
94*7bb0eb34SAndy Fiddaman.In sys/types.h .
95*7bb0eb34SAndy FiddamanSee
96*7bb0eb34SAndy Fiddaman.Xr types.h 3HEAD .
97*7bb0eb34SAndy Fiddaman.Pp
98*7bb0eb34SAndy Fiddaman.Bl -inset -offset Ds -compact
99*7bb0eb34SAndy Fiddaman.It Vt pthread_attr_t
100*7bb0eb34SAndy Fiddaman.It Vt pthread_barrier_t
101*7bb0eb34SAndy Fiddaman.It Vt pthread_barrierattr_t
102*7bb0eb34SAndy Fiddaman.It Vt pthread_cond_t
103*7bb0eb34SAndy Fiddaman.It Vt pthread_condattr_t
104*7bb0eb34SAndy Fiddaman.It Vt pthread_key_t
105*7bb0eb34SAndy Fiddaman.It Vt pthread_mutex_t
106*7bb0eb34SAndy Fiddaman.It Vt pthread_mutexattr_t
107*7bb0eb34SAndy Fiddaman.It Vt pthread_once_t
108*7bb0eb34SAndy Fiddaman.It Vt pthread_rwlock_t
109*7bb0eb34SAndy Fiddaman.It Vt pthread_rwlockattr_t
110*7bb0eb34SAndy Fiddaman.It Vt pthread_spinlock_t
111*7bb0eb34SAndy Fiddaman.It Vt pthread_t
112*7bb0eb34SAndy Fiddaman.El
113*7bb0eb34SAndy Fiddaman.Sh INTERFACE STABILITY
114*7bb0eb34SAndy Fiddaman.Sy Committed
115*7bb0eb34SAndy Fiddaman.Sh SEE ALSO
116*7bb0eb34SAndy Fiddaman.Xr pthread_attr_getguardsize 3C ,
117*7bb0eb34SAndy Fiddaman.Xr pthread_attr_init 3C ,
118*7bb0eb34SAndy Fiddaman.Xr pthread_attr_setscope 3C ,
119*7bb0eb34SAndy Fiddaman.Xr pthread_cancel 3C ,
120*7bb0eb34SAndy Fiddaman.Xr pthread_cleanup_pop 3C ,
121*7bb0eb34SAndy Fiddaman.Xr pthread_cond_init 3C ,
122*7bb0eb34SAndy Fiddaman.Xr pthread_cond_signal 3C ,
123*7bb0eb34SAndy Fiddaman.Xr pthread_cond_wait 3C ,
124*7bb0eb34SAndy Fiddaman.Xr pthread_condattr_init 3C ,
125*7bb0eb34SAndy Fiddaman.Xr pthread_create 3C ,
126*7bb0eb34SAndy Fiddaman.Xr pthread_detach 3C ,
127*7bb0eb34SAndy Fiddaman.Xr pthread_equal 3C ,
128*7bb0eb34SAndy Fiddaman.Xr pthread_exit 3C ,
129*7bb0eb34SAndy Fiddaman.Xr pthread_getconcurrency 3C ,
130*7bb0eb34SAndy Fiddaman.Xr pthread_getschedparam 3C ,
131*7bb0eb34SAndy Fiddaman.Xr pthread_join 3C ,
132*7bb0eb34SAndy Fiddaman.Xr pthread_key_create 3C ,
133*7bb0eb34SAndy Fiddaman.Xr pthread_key_delete 3C ,
134*7bb0eb34SAndy Fiddaman.Xr pthread_mutex_consistent 3C ,
135*7bb0eb34SAndy Fiddaman.Xr pthread_mutex_init 3C ,
136*7bb0eb34SAndy Fiddaman.Xr pthread_mutex_lock 3C ,
137*7bb0eb34SAndy Fiddaman.Xr pthread_mutex_setprioceiling 3C ,
138*7bb0eb34SAndy Fiddaman.Xr pthread_mutexattr_getprotocol 3C ,
139*7bb0eb34SAndy Fiddaman.Xr pthread_mutexattr_getrobust 3C ,
140*7bb0eb34SAndy Fiddaman.Xr pthread_mutexattr_gettype 3C ,
141*7bb0eb34SAndy Fiddaman.Xr pthread_mutexattr_init 3C ,
142*7bb0eb34SAndy Fiddaman.Xr pthread_once 3C ,
143*7bb0eb34SAndy Fiddaman.Xr pthread_rwlock_init 3C ,
144*7bb0eb34SAndy Fiddaman.Xr pthread_rwlock_rdlock 3C ,
145*7bb0eb34SAndy Fiddaman.Xr pthread_rwlock_unlock 3C ,
146*7bb0eb34SAndy Fiddaman.Xr pthread_rwlock_wrlock 3C ,
147*7bb0eb34SAndy Fiddaman.Xr pthread_rwlockattr_getpshared 3C ,
148*7bb0eb34SAndy Fiddaman.Xr pthread_rwlockattr_init 3C ,
149*7bb0eb34SAndy Fiddaman.Xr pthread_self 3C ,
150*7bb0eb34SAndy Fiddaman.Xr pthread_setcancelstate 3C ,
151*7bb0eb34SAndy Fiddaman.Xr pthread_setspecific 3C ,
152*7bb0eb34SAndy Fiddaman.Xr sched.h 3HEAD ,
153*7bb0eb34SAndy Fiddaman.Xr time.h 3HEAD ,
154*7bb0eb34SAndy Fiddaman.Xr types.h 3HEAD ,
155*7bb0eb34SAndy Fiddaman.Xr attributes 7
156