Add missing man pages. Fix various compliance bugs, mostly having to do with
error return values. Implement pthread_mutexattr_gettype(). PR: docs/16537, docs/17538
This commit is contained in:
parent
2b91ff7819
commit
4c089f4dff
85
lib/libc/sys/sigwait.2
Normal file
85
lib/libc/sys/sigwait.2
Normal file
@ -0,0 +1,85 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt SIGWAIT 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm sigwait
|
||||
.Nd select a set of signals
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn sigwait "const sigset_t *set" "int *sig"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn sigwait
|
||||
function selects a set of signals, specified by
|
||||
.Fa set .
|
||||
If none of the selected signals are pending,
|
||||
.Fn sigwait
|
||||
waits until one or more of the selected signals has been generated.
|
||||
Then
|
||||
.Fn sigwait
|
||||
atomically clears one of the selected signals from the set of pending signals
|
||||
for the process and sets the location pointed to by
|
||||
.Fa sig
|
||||
to the signal number that was cleared.
|
||||
.Pp
|
||||
The signals specified by
|
||||
.Fa set
|
||||
should be blocked at the time of the call to
|
||||
.Fn sigwait .
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn sigwait
|
||||
returns 0 and sets the location pointed to by
|
||||
.Fa sig
|
||||
to the cleared signal number.
|
||||
Otherwise, an error number is returned.
|
||||
.Sh ERRORS
|
||||
.Fn sigwait
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa set
|
||||
specifies one or more invalid signal numbers.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr pause 3 ,
|
||||
.Xr pthread_sigmask 3 ,
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigpending 2 ,
|
||||
.Xr sigsuspend 2
|
||||
.Sh STANDARDS
|
||||
.Fn sigwait
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
@ -4,9 +4,11 @@
|
||||
|
||||
.PATH: ${.CURDIR}/man
|
||||
|
||||
MAN3+= pthread_cancel.3 \
|
||||
MAN3+= pthread_attr.3 \
|
||||
pthread_cancel.3 \
|
||||
pthread_cleanup_pop.3 \
|
||||
pthread_cleanup_push.3 \
|
||||
pthread_condattr.3 \
|
||||
pthread_cond_broadcast.3 \
|
||||
pthread_cond_destroy.3 \
|
||||
pthread_cond_init.3 \
|
||||
@ -21,6 +23,8 @@ MAN3+= pthread_cancel.3 \
|
||||
pthread_join.3 \
|
||||
pthread_key_create.3 \
|
||||
pthread_key_delete.3 \
|
||||
pthread_kill.3 \
|
||||
pthread_mutexattr.3 \
|
||||
pthread_mutex_destroy.3 \
|
||||
pthread_mutex_init.3 \
|
||||
pthread_mutex_lock.3 \
|
||||
@ -36,20 +40,54 @@ MAN3+= pthread_cancel.3 \
|
||||
pthread_rwlockattr_getpshared.3 \
|
||||
pthread_rwlockattr_init.3 \
|
||||
pthread_rwlockattr_setpshared.3 \
|
||||
pthread_schedparam.3 \
|
||||
pthread_self.3 \
|
||||
pthread_setspecific.3 \
|
||||
pthread_sigmask.3 \
|
||||
pthread_testcancel.3 \
|
||||
sem_destroy.3 \
|
||||
sem_getvalue.3 \
|
||||
sem_init.3 \
|
||||
sem_open.3 \
|
||||
sem_post.3 \
|
||||
sem_wait.3
|
||||
sem_wait.3 \
|
||||
sigwait.3
|
||||
|
||||
MLINKS+= pthread_cancel.3 pthread_getcancelstate.3 \
|
||||
pthread_cancel.3 pthread_setcancelstate.3 \
|
||||
MLINKS+= \
|
||||
pthread_attr.3 pthread_attr_destroy.3 \
|
||||
pthread_attr.3 pthread_attr_getdetachstate.3 \
|
||||
pthread_attr.3 pthread_attr_getinheritsched.3 \
|
||||
pthread_attr.3 pthread_attr_getschedparam.3 \
|
||||
pthread_attr.3 pthread_attr_getschedpolicy.3 \
|
||||
pthread_attr.3 pthread_attr_getscope.3 \
|
||||
pthread_attr.3 pthread_attr_getstackaddr.3 \
|
||||
pthread_attr.3 pthread_attr_getstacksize.3 \
|
||||
pthread_attr.3 pthread_attr_init.3 \
|
||||
pthread_attr.3 pthread_attr_setdetachstate.3 \
|
||||
pthread_attr.3 pthread_attr_setinheritsched.3 \
|
||||
pthread_attr.3 pthread_attr_setschedparam.3 \
|
||||
pthread_attr.3 pthread_attr_setschedpolicy.3 \
|
||||
pthread_attr.3 pthread_attr_setscope.3 \
|
||||
pthread_attr.3 pthread_attr_setstackaddr.3 \
|
||||
pthread_attr.3 pthread_attr_setstacksize.3 \
|
||||
pthread_condattr.3 pthread_condattr_init.3 \
|
||||
pthread_condattr.3 pthread_condattr_destroy.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_init.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_destroy.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_getprioceiling.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_getprotocol.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_getpshared.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_gettype.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_setprioceiling.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_setprotocol.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_setpshared.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_settype.3 \
|
||||
pthread_rwlock_rdlock.3 pthread_rwlock_tryrdlock.3 \
|
||||
pthread_rwlock_wrlock.3 pthread_rwlock_trywrlock.3 \
|
||||
pthread_schedparam.3 pthread_getschedparam.3 \
|
||||
pthread_schedparam.3 pthread_setschedparam.3 \
|
||||
pthread_testcancel.3 pthread_getcancelstate.3 \
|
||||
pthread_testcancel.3 pthread_setcancelstate.3 \
|
||||
sem_open.3 sem_close.3 \
|
||||
sem_open.3 sem_unlink.3 \
|
||||
sem_wait.3 sem_trywait.3
|
||||
|
200
lib/libc_r/man/pthread_attr.3
Normal file
200
lib/libc_r/man/pthread_attr.3
Normal file
@ -0,0 +1,200 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 28, 2000
|
||||
.Dt PTHREAD_ATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_attr
|
||||
.Nd thread attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_attr_init "pthread_attr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_destroy "pthread_attr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setstacksize "pthread_attr_t *attr" "size_t stacksize"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getstacksize "const pthread_attr_t *attr" "size_t *stacksize"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setstackaddr "pthread_attr_t *attr" "void *stackaddr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getstackaddr "const pthread_attr_t *attr" "void **stackaddr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setdetachstate "pthread_attr_t *attr" "int detachstate"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getdetachstate "const pthread_attr_t *attr" "int *detachstate"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setinheritsched "pthread_attr_t *attr" "int inheritsched"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getinheritsched "const pthread_attr_t *attr" "int *inheritsched"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setschedparam "pthread_attr_t *attr" "const struct sched_param *param"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getschedparam "const pthread_attr_t *attr" "struct schedparam *param"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setschedpolicy "pthread_attr_t *attr" "int policy"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getschedpolicy "const pthread_attr_t *attr" "int *policy"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setscope "pthread_attr_t *attr" "int contentionscope"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getscope "const pthread_attr_t *attr" "int *contentionscope"
|
||||
.Sh DESCRIPTION
|
||||
Thread attributes are used to specify parameters to
|
||||
.Fn pthread_create .
|
||||
One attribute object can be used in multiple calls to
|
||||
.Fn pthread_create ,
|
||||
with or without modifications between calls.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_init
|
||||
function initializes
|
||||
.Fa attr
|
||||
with all the default thread attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_destroy
|
||||
function destroys
|
||||
.Fa attr .
|
||||
|
||||
The
|
||||
.Fn pthread_attr_set*
|
||||
functions set the attribute that corresponds to each function name.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_get*
|
||||
functions copy the value of the attribute that corresponds to each function name
|
||||
to the location pointed to by the second function parameter.
|
||||
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_attr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
|
||||
.Fn pthread_attr_setstacksize
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa stacksize
|
||||
is less than
|
||||
.Dv PTHREAD_STACK_MIN .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setdetachstate
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa detachstate .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setinheritsched
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid value for
|
||||
.Fa param .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setschedpolicy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid or unsupported value for
|
||||
.Fa policy .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setscope
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid or unsupported value for
|
||||
.Fa contentionscope .
|
||||
.El
|
||||
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_create 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_attr_init ,
|
||||
.Fn pthread_attr_destroy ,
|
||||
.Fn pthread_attr_setstacksize ,
|
||||
.Fn pthread_attr_getstacksize ,
|
||||
.Fn pthread_attr_setstackaddr ,
|
||||
.Fn pthread_attr_getstackaddr ,
|
||||
.Fn pthread_attr_setdetachstate ,
|
||||
and
|
||||
.Fn pthread_attr_getdetachstate
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
||||
|
||||
.Fn pthread_attr_setinheritsched ,
|
||||
.Fn pthread_attr_getinheritsched ,
|
||||
.Fn pthread_attr_setschedparam ,
|
||||
.Fn pthread_attr_getschedparam ,
|
||||
.Fn pthread_attr_setschedpolicy ,
|
||||
.Fn pthread_attr_getschedpolicy ,
|
||||
.Fn pthread_attr_setscope ,
|
||||
and
|
||||
.Fn pthread_attr_getscope
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
82
lib/libc_r/man/pthread_condattr.3
Normal file
82
lib/libc_r/man/pthread_condattr.3
Normal file
@ -0,0 +1,82 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 28, 2000
|
||||
.Dt PTHREAD_CONDATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_condattr
|
||||
.Nd condition attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_condattr_init "pthread_condattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_condattr_destroy "pthread_condattr_t *attr"
|
||||
.Sh DESCRIPTION
|
||||
Condition attribute objects are used to specify parameters to
|
||||
.Fn pthread_cond_init .
|
||||
FreeBSD's implementation of conditions does not support any non-default
|
||||
attributes, so these functions are not very useful, though they are required to
|
||||
to be present by POSIX.
|
||||
|
||||
The
|
||||
.Fn pthread_condattr_init
|
||||
function initializes a condition attribute object with the default attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_condattr_destroy
|
||||
function destroys a condition attribute object.
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_condattr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_condattr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_cond_init 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_condattr_init
|
||||
and
|
||||
.Fn pthread_condattr_destroy
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
75
lib/libc_r/man/pthread_kill.3
Normal file
75
lib/libc_r/man/pthread_kill.3
Normal file
@ -0,0 +1,75 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt PTHREAD_KILL 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_kill
|
||||
.Nd send a signal to a specified thread
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn pthread_kill "pthread_t thread" "int sig"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_kill
|
||||
function sends a signal, specified by
|
||||
.Fa sig ,
|
||||
to a thread, specified by
|
||||
.Fa thread .
|
||||
If
|
||||
.Fa sig
|
||||
is 0, error checking is performed, but no signal is actually sent.
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn pthread_kill
|
||||
returns 0.
|
||||
Otherwise, an error number is returned.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_kill
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ESRCH
|
||||
.Fa thread
|
||||
is an invalid thread ID.
|
||||
.It Bq Er EINVAL
|
||||
.Fa sig
|
||||
is an invalid or unsupported signal number.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr kill 2 ,
|
||||
.Xr pthread_self 3 ,
|
||||
.Xr raise 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_kill
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
172
lib/libc_r/man/pthread_mutexattr.3
Normal file
172
lib/libc_r/man/pthread_mutexattr.3
Normal file
@ -0,0 +1,172 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 1, 2000
|
||||
.Dt PTHREAD_MUTEXATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_mutexattr
|
||||
.Nd mutex attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_init "pthread_mutexattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_destroy "pthread_mutexattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_setprioceiling "pthread_mutexattr_t *attr" "int prioceiling"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_getprioceiling "pthread_mutexattr_t *attr" "int *prioceiling"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_setprotocol "pthread_mutexattr_t *attr" "int protocol"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_getprotocol "pthread_mutexattr_t *attr" "int *protocol"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_settype "pthread_mutexattr_t *attr" "int type"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_gettype "pthread_mutexattr_t *attr" "int *type"
|
||||
.Sh DESCRIPTION
|
||||
Mutex attributes are used to specify parameters to
|
||||
.Fn pthread_mutex_init .
|
||||
One attribute object can be used in multiple calls to
|
||||
.Fn pthread_mutex_init ,
|
||||
with or without modifications between calls.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_init
|
||||
function initializes
|
||||
.Fa attr
|
||||
with all the default mutex attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_destroy
|
||||
function destroys
|
||||
.Fa attr .
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_set*
|
||||
functions set the attribute that corresponds to each function name.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_get*
|
||||
functions copy the value of the attribute that corresponds to each function name
|
||||
to the location pointed to by the second function parameter.
|
||||
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicacte the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_mutexattr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_setprioceiling
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa prioceiling .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_getprioceiling
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_setprotocol
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa protocol .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_getprotocol
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_settype
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa type .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_gettype
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_mutex_init 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_mutexattr_init
|
||||
and
|
||||
.Fn pthread_mutexattr_destroy
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
||||
|
||||
.Fn pthread_mutexattr_setprioceiling ,
|
||||
.Fn pthread_mutexattr_getprioceiling ,
|
||||
.Fn pthread_mutexattr_setprotocol ,
|
||||
.Fn pthread_mutexattr_getprotocol ,
|
||||
.Fn pthread_mutexattr_settype ,
|
||||
and
|
||||
.Fn pthread_mutexattr_gettype
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
89
lib/libc_r/man/pthread_schedparam.3
Normal file
89
lib/libc_r/man/pthread_schedparam.3
Normal file
@ -0,0 +1,89 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 1, 2000
|
||||
.Dt PTHREAD_SCHEDPARAM 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_schedparam
|
||||
.Nd thread scheduling parameter manipulation
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_setschedparam "pthread_t thread" "int policy" "const struct sched_param *param"
|
||||
.Ft int
|
||||
.Fn pthread_getschedparam "pthread_t thread" "int *policy" "struct sched_param *param"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_setschedparam
|
||||
and
|
||||
.Fn pthread_getschedparam
|
||||
functions set and get the scheduling parameters of individual threads.
|
||||
The scheduling policy for a thread can either be
|
||||
.Dv SCHED_FIFO
|
||||
(first in, first out) or
|
||||
.Dv SCHED_RR
|
||||
(round-robin).
|
||||
The thread priority (accessed via
|
||||
.Va param->sched_priority )
|
||||
must be at least
|
||||
.Dv PTHREAD_MIN_PRIORITY
|
||||
and no more than
|
||||
.Dv PTHREAD_MAX_PRIORITY .
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_setschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Va policy .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid value for scheduling parameters.
|
||||
.It Bq Er ESRCH
|
||||
Non-existent thread
|
||||
.Va thread .
|
||||
.El
|
||||
|
||||
.Fn pthread_getschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ESRCH
|
||||
Non-existent thread
|
||||
.Va thread .
|
||||
.El
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_setschedparam
|
||||
and
|
||||
.Fn pthread_getschedparam
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
96
lib/libc_r/man/pthread_sigmask.3
Normal file
96
lib/libc_r/man/pthread_sigmask.3
Normal file
@ -0,0 +1,96 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt PTHREAD_SIGMASK 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_sigmask
|
||||
.Nd examine and/or change a thread's signal mask
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn pthread_sigmask "int how" "const sigset_t *set" "sigset_t *oset"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_sigmask
|
||||
function examines and/or changes the calling thread's signal mask.
|
||||
.Pp
|
||||
If
|
||||
.Fa set
|
||||
is not
|
||||
.Dv NULL ,
|
||||
it specifies a set of signals to be modified, and
|
||||
.Fa how
|
||||
specifies what to set the signal mask to:
|
||||
.Bl -tag -width SIG_UNBLOCK
|
||||
.It Dv SIG_BLOCK
|
||||
Union of the current mask and
|
||||
.Fa set .
|
||||
.It Dv SIG_UNBLOCK
|
||||
Intersection of the current mask and the complement of
|
||||
.Fa set .
|
||||
.It Dv SIG_SETMASK
|
||||
.Fa set .
|
||||
.El
|
||||
.Pp
|
||||
If
|
||||
.Fa oset
|
||||
is not NULL, the previous signal mask is stored in the location pointed to by
|
||||
.Fa oset .
|
||||
.Pp
|
||||
.Dv SIGKILL
|
||||
and
|
||||
.Dv SIGSTOP
|
||||
cannot be blocked, and will be silently ignored if included in the signal mask.
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn pthread_sigmask
|
||||
returns 0.
|
||||
Otherwise, an error is returned.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_sigmask
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa how
|
||||
is not one of the defined values.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigpending 2 ,
|
||||
.Xr sigprocmask 2 ,
|
||||
.Xr sigsetops 3 ,
|
||||
.Xr sigsuspend 2
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_sigmask
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
85
lib/libc_r/man/sigwait.3
Normal file
85
lib/libc_r/man/sigwait.3
Normal file
@ -0,0 +1,85 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt SIGWAIT 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm sigwait
|
||||
.Nd select a set of signals
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn sigwait "const sigset_t *set" "int *sig"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn sigwait
|
||||
function selects a set of signals, specified by
|
||||
.Fa set .
|
||||
If none of the selected signals are pending,
|
||||
.Fn sigwait
|
||||
waits until one or more of the selected signals has been generated.
|
||||
Then
|
||||
.Fn sigwait
|
||||
atomically clears one of the selected signals from the set of pending signals
|
||||
for the process and sets the location pointed to by
|
||||
.Fa sig
|
||||
to the signal number that was cleared.
|
||||
.Pp
|
||||
The signals specified by
|
||||
.Fa set
|
||||
should be blocked at the time of the call to
|
||||
.Fn sigwait .
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn sigwait
|
||||
returns 0 and sets the location pointed to by
|
||||
.Fa sig
|
||||
to the cleared signal number.
|
||||
Otherwise, an error number is returned.
|
||||
.Sh ERRORS
|
||||
.Fn sigwait
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa set
|
||||
specifies one or more invalid signal numbers.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr pause 3 ,
|
||||
.Xr pthread_sigmask 3 ,
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigpending 2 ,
|
||||
.Xr sigsuspend 2
|
||||
.Sh STANDARDS
|
||||
.Fn sigwait
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
@ -41,9 +41,11 @@ pthread_attr_setschedparam(pthread_attr_t *attr, const struct sched_param *param
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) || (param == NULL))
|
||||
if ((attr == NULL) || (*attr == NULL))
|
||||
ret = EINVAL;
|
||||
else
|
||||
else if (param == NULL) {
|
||||
ret = ENOTSUP;
|
||||
} else
|
||||
(*attr)->prio = param->sched_priority;
|
||||
|
||||
return(ret);
|
||||
|
@ -41,10 +41,11 @@ pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) || (policy < SCHED_FIFO) ||
|
||||
(policy > SCHED_RR))
|
||||
if ((attr == NULL) || (*attr == NULL))
|
||||
ret = EINVAL;
|
||||
else
|
||||
else if ((policy < SCHED_FIFO) || (policy > SCHED_RR)) {
|
||||
ret = ENOTSUP;
|
||||
} else
|
||||
(*attr)->sched_policy = policy;
|
||||
|
||||
return(ret);
|
||||
|
@ -41,21 +41,14 @@ pthread_attr_setscope(pthread_attr_t *attr, int contentionscope)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) ||
|
||||
(contentionscope != PTHREAD_SCOPE_PROCESS) ||
|
||||
(contentionscope != PTHREAD_SCOPE_SYSTEM))
|
||||
if ((attr == NULL) || (*attr == NULL)) {
|
||||
/* Return an invalid argument: */
|
||||
ret = EINVAL;
|
||||
|
||||
else if (contentionscope == PTHREAD_SCOPE_SYSTEM)
|
||||
/* We don't support system wide contention: */
|
||||
#ifdef NOT_YET
|
||||
} else if ((contentionscope != PTHREAD_SCOPE_PROCESS) ||
|
||||
(contentionscope != PTHREAD_SCOPE_SYSTEM)) {
|
||||
/* We don't support PTHREAD_SCOPE_SYSTEM. */
|
||||
ret = ENOTSUP;
|
||||
#else
|
||||
ret = EOPNOTSUPP;
|
||||
#endif
|
||||
|
||||
else
|
||||
} else
|
||||
(*attr)->flags |= contentionscope;
|
||||
|
||||
return(ret);
|
||||
|
@ -76,4 +76,19 @@ pthread_mutexattr_settype(pthread_mutexattr_t *attr, int type)
|
||||
}
|
||||
return(ret);
|
||||
}
|
||||
|
||||
int
|
||||
pthread_mutexattr_gettype(pthread_mutexattr_t *attr, int *type)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (attr == NULL || *attr == NULL || (*attr)->m_type >=
|
||||
MUTEX_TYPE_MAX) {
|
||||
ret = EINVAL;
|
||||
} else {
|
||||
*type = (*attr)->m_type;
|
||||
ret = 0;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
@ -43,14 +43,16 @@ pthread_setschedparam(pthread_t pthread, int policy,
|
||||
{
|
||||
int old_prio, in_readyq = 0, ret = 0;
|
||||
|
||||
if ((param == NULL) || (param->sched_priority < PTHREAD_MIN_PRIORITY) ||
|
||||
(param->sched_priority > PTHREAD_MAX_PRIORITY) ||
|
||||
(policy < SCHED_FIFO) || (policy > SCHED_RR))
|
||||
if ((param == NULL) || (policy < SCHED_FIFO) || (policy > SCHED_RR)) {
|
||||
/* Return an invalid argument error: */
|
||||
ret = EINVAL;
|
||||
} else if ((param->sched_priority < PTHREAD_MIN_PRIORITY) ||
|
||||
(param->sched_priority > PTHREAD_MAX_PRIORITY)) {
|
||||
/* Return an unsupported value error. */
|
||||
ret = ENOTSUP;
|
||||
|
||||
/* Find the thread in the list of active threads: */
|
||||
else if ((ret = _find_thread(pthread)) == 0) {
|
||||
} else if ((ret = _find_thread(pthread)) == 0) {
|
||||
/*
|
||||
* Defer signals to protect the scheduling queues from
|
||||
* access by the signal handler:
|
||||
|
@ -41,9 +41,11 @@ pthread_attr_setschedparam(pthread_attr_t *attr, const struct sched_param *param
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) || (param == NULL))
|
||||
if ((attr == NULL) || (*attr == NULL))
|
||||
ret = EINVAL;
|
||||
else
|
||||
else if (param == NULL) {
|
||||
ret = ENOTSUP;
|
||||
} else
|
||||
(*attr)->prio = param->sched_priority;
|
||||
|
||||
return(ret);
|
||||
|
@ -41,10 +41,11 @@ pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) || (policy < SCHED_FIFO) ||
|
||||
(policy > SCHED_RR))
|
||||
if ((attr == NULL) || (*attr == NULL))
|
||||
ret = EINVAL;
|
||||
else
|
||||
else if ((policy < SCHED_FIFO) || (policy > SCHED_RR)) {
|
||||
ret = ENOTSUP;
|
||||
} else
|
||||
(*attr)->sched_policy = policy;
|
||||
|
||||
return(ret);
|
||||
|
@ -41,21 +41,14 @@ pthread_attr_setscope(pthread_attr_t *attr, int contentionscope)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) ||
|
||||
(contentionscope != PTHREAD_SCOPE_PROCESS) ||
|
||||
(contentionscope != PTHREAD_SCOPE_SYSTEM))
|
||||
if ((attr == NULL) || (*attr == NULL)) {
|
||||
/* Return an invalid argument: */
|
||||
ret = EINVAL;
|
||||
|
||||
else if (contentionscope == PTHREAD_SCOPE_SYSTEM)
|
||||
/* We don't support system wide contention: */
|
||||
#ifdef NOT_YET
|
||||
} else if ((contentionscope != PTHREAD_SCOPE_PROCESS) ||
|
||||
(contentionscope != PTHREAD_SCOPE_SYSTEM)) {
|
||||
/* We don't support PTHREAD_SCOPE_SYSTEM. */
|
||||
ret = ENOTSUP;
|
||||
#else
|
||||
ret = EOPNOTSUPP;
|
||||
#endif
|
||||
|
||||
else
|
||||
} else
|
||||
(*attr)->flags |= contentionscope;
|
||||
|
||||
return(ret);
|
||||
|
@ -76,4 +76,19 @@ pthread_mutexattr_settype(pthread_mutexattr_t *attr, int type)
|
||||
}
|
||||
return(ret);
|
||||
}
|
||||
|
||||
int
|
||||
pthread_mutexattr_gettype(pthread_mutexattr_t *attr, int *type)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (attr == NULL || *attr == NULL || (*attr)->m_type >=
|
||||
MUTEX_TYPE_MAX) {
|
||||
ret = EINVAL;
|
||||
} else {
|
||||
*type = (*attr)->m_type;
|
||||
ret = 0;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
@ -43,14 +43,16 @@ pthread_setschedparam(pthread_t pthread, int policy,
|
||||
{
|
||||
int old_prio, in_readyq = 0, ret = 0;
|
||||
|
||||
if ((param == NULL) || (param->sched_priority < PTHREAD_MIN_PRIORITY) ||
|
||||
(param->sched_priority > PTHREAD_MAX_PRIORITY) ||
|
||||
(policy < SCHED_FIFO) || (policy > SCHED_RR))
|
||||
if ((param == NULL) || (policy < SCHED_FIFO) || (policy > SCHED_RR)) {
|
||||
/* Return an invalid argument error: */
|
||||
ret = EINVAL;
|
||||
} else if ((param->sched_priority < PTHREAD_MIN_PRIORITY) ||
|
||||
(param->sched_priority > PTHREAD_MAX_PRIORITY)) {
|
||||
/* Return an unsupported value error. */
|
||||
ret = ENOTSUP;
|
||||
|
||||
/* Find the thread in the list of active threads: */
|
||||
else if ((ret = _find_thread(pthread)) == 0) {
|
||||
} else if ((ret = _find_thread(pthread)) == 0) {
|
||||
/*
|
||||
* Defer signals to protect the scheduling queues from
|
||||
* access by the signal handler:
|
||||
|
@ -4,9 +4,11 @@
|
||||
|
||||
.PATH: ${.CURDIR}/man
|
||||
|
||||
MAN3+= pthread_cancel.3 \
|
||||
MAN3+= pthread_attr.3 \
|
||||
pthread_cancel.3 \
|
||||
pthread_cleanup_pop.3 \
|
||||
pthread_cleanup_push.3 \
|
||||
pthread_condattr.3 \
|
||||
pthread_cond_broadcast.3 \
|
||||
pthread_cond_destroy.3 \
|
||||
pthread_cond_init.3 \
|
||||
@ -21,6 +23,8 @@ MAN3+= pthread_cancel.3 \
|
||||
pthread_join.3 \
|
||||
pthread_key_create.3 \
|
||||
pthread_key_delete.3 \
|
||||
pthread_kill.3 \
|
||||
pthread_mutexattr.3 \
|
||||
pthread_mutex_destroy.3 \
|
||||
pthread_mutex_init.3 \
|
||||
pthread_mutex_lock.3 \
|
||||
@ -36,20 +40,54 @@ MAN3+= pthread_cancel.3 \
|
||||
pthread_rwlockattr_getpshared.3 \
|
||||
pthread_rwlockattr_init.3 \
|
||||
pthread_rwlockattr_setpshared.3 \
|
||||
pthread_schedparam.3 \
|
||||
pthread_self.3 \
|
||||
pthread_setspecific.3 \
|
||||
pthread_sigmask.3 \
|
||||
pthread_testcancel.3 \
|
||||
sem_destroy.3 \
|
||||
sem_getvalue.3 \
|
||||
sem_init.3 \
|
||||
sem_open.3 \
|
||||
sem_post.3 \
|
||||
sem_wait.3
|
||||
sem_wait.3 \
|
||||
sigwait.3
|
||||
|
||||
MLINKS+= pthread_cancel.3 pthread_getcancelstate.3 \
|
||||
pthread_cancel.3 pthread_setcancelstate.3 \
|
||||
MLINKS+= \
|
||||
pthread_attr.3 pthread_attr_destroy.3 \
|
||||
pthread_attr.3 pthread_attr_getdetachstate.3 \
|
||||
pthread_attr.3 pthread_attr_getinheritsched.3 \
|
||||
pthread_attr.3 pthread_attr_getschedparam.3 \
|
||||
pthread_attr.3 pthread_attr_getschedpolicy.3 \
|
||||
pthread_attr.3 pthread_attr_getscope.3 \
|
||||
pthread_attr.3 pthread_attr_getstackaddr.3 \
|
||||
pthread_attr.3 pthread_attr_getstacksize.3 \
|
||||
pthread_attr.3 pthread_attr_init.3 \
|
||||
pthread_attr.3 pthread_attr_setdetachstate.3 \
|
||||
pthread_attr.3 pthread_attr_setinheritsched.3 \
|
||||
pthread_attr.3 pthread_attr_setschedparam.3 \
|
||||
pthread_attr.3 pthread_attr_setschedpolicy.3 \
|
||||
pthread_attr.3 pthread_attr_setscope.3 \
|
||||
pthread_attr.3 pthread_attr_setstackaddr.3 \
|
||||
pthread_attr.3 pthread_attr_setstacksize.3 \
|
||||
pthread_condattr.3 pthread_condattr_init.3 \
|
||||
pthread_condattr.3 pthread_condattr_destroy.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_init.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_destroy.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_getprioceiling.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_getprotocol.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_getpshared.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_gettype.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_setprioceiling.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_setprotocol.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_setpshared.3 \
|
||||
pthread_mutexattr.3 pthread_mutexattr_settype.3 \
|
||||
pthread_rwlock_rdlock.3 pthread_rwlock_tryrdlock.3 \
|
||||
pthread_rwlock_wrlock.3 pthread_rwlock_trywrlock.3 \
|
||||
pthread_schedparam.3 pthread_getschedparam.3 \
|
||||
pthread_schedparam.3 pthread_setschedparam.3 \
|
||||
pthread_testcancel.3 pthread_getcancelstate.3 \
|
||||
pthread_testcancel.3 pthread_setcancelstate.3 \
|
||||
sem_open.3 sem_close.3 \
|
||||
sem_open.3 sem_unlink.3 \
|
||||
sem_wait.3 sem_trywait.3
|
||||
|
200
lib/libpthread/man/pthread_attr.3
Normal file
200
lib/libpthread/man/pthread_attr.3
Normal file
@ -0,0 +1,200 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 28, 2000
|
||||
.Dt PTHREAD_ATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_attr
|
||||
.Nd thread attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_attr_init "pthread_attr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_destroy "pthread_attr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setstacksize "pthread_attr_t *attr" "size_t stacksize"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getstacksize "const pthread_attr_t *attr" "size_t *stacksize"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setstackaddr "pthread_attr_t *attr" "void *stackaddr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getstackaddr "const pthread_attr_t *attr" "void **stackaddr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setdetachstate "pthread_attr_t *attr" "int detachstate"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getdetachstate "const pthread_attr_t *attr" "int *detachstate"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setinheritsched "pthread_attr_t *attr" "int inheritsched"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getinheritsched "const pthread_attr_t *attr" "int *inheritsched"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setschedparam "pthread_attr_t *attr" "const struct sched_param *param"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getschedparam "const pthread_attr_t *attr" "struct schedparam *param"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setschedpolicy "pthread_attr_t *attr" "int policy"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getschedpolicy "const pthread_attr_t *attr" "int *policy"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setscope "pthread_attr_t *attr" "int contentionscope"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getscope "const pthread_attr_t *attr" "int *contentionscope"
|
||||
.Sh DESCRIPTION
|
||||
Thread attributes are used to specify parameters to
|
||||
.Fn pthread_create .
|
||||
One attribute object can be used in multiple calls to
|
||||
.Fn pthread_create ,
|
||||
with or without modifications between calls.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_init
|
||||
function initializes
|
||||
.Fa attr
|
||||
with all the default thread attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_destroy
|
||||
function destroys
|
||||
.Fa attr .
|
||||
|
||||
The
|
||||
.Fn pthread_attr_set*
|
||||
functions set the attribute that corresponds to each function name.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_get*
|
||||
functions copy the value of the attribute that corresponds to each function name
|
||||
to the location pointed to by the second function parameter.
|
||||
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_attr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
|
||||
.Fn pthread_attr_setstacksize
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa stacksize
|
||||
is less than
|
||||
.Dv PTHREAD_STACK_MIN .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setdetachstate
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa detachstate .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setinheritsched
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid value for
|
||||
.Fa param .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setschedpolicy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid or unsupported value for
|
||||
.Fa policy .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setscope
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid or unsupported value for
|
||||
.Fa contentionscope .
|
||||
.El
|
||||
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_create 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_attr_init ,
|
||||
.Fn pthread_attr_destroy ,
|
||||
.Fn pthread_attr_setstacksize ,
|
||||
.Fn pthread_attr_getstacksize ,
|
||||
.Fn pthread_attr_setstackaddr ,
|
||||
.Fn pthread_attr_getstackaddr ,
|
||||
.Fn pthread_attr_setdetachstate ,
|
||||
and
|
||||
.Fn pthread_attr_getdetachstate
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
||||
|
||||
.Fn pthread_attr_setinheritsched ,
|
||||
.Fn pthread_attr_getinheritsched ,
|
||||
.Fn pthread_attr_setschedparam ,
|
||||
.Fn pthread_attr_getschedparam ,
|
||||
.Fn pthread_attr_setschedpolicy ,
|
||||
.Fn pthread_attr_getschedpolicy ,
|
||||
.Fn pthread_attr_setscope ,
|
||||
and
|
||||
.Fn pthread_attr_getscope
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
82
lib/libpthread/man/pthread_condattr.3
Normal file
82
lib/libpthread/man/pthread_condattr.3
Normal file
@ -0,0 +1,82 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 28, 2000
|
||||
.Dt PTHREAD_CONDATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_condattr
|
||||
.Nd condition attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_condattr_init "pthread_condattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_condattr_destroy "pthread_condattr_t *attr"
|
||||
.Sh DESCRIPTION
|
||||
Condition attribute objects are used to specify parameters to
|
||||
.Fn pthread_cond_init .
|
||||
FreeBSD's implementation of conditions does not support any non-default
|
||||
attributes, so these functions are not very useful, though they are required to
|
||||
to be present by POSIX.
|
||||
|
||||
The
|
||||
.Fn pthread_condattr_init
|
||||
function initializes a condition attribute object with the default attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_condattr_destroy
|
||||
function destroys a condition attribute object.
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_condattr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_condattr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_cond_init 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_condattr_init
|
||||
and
|
||||
.Fn pthread_condattr_destroy
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
75
lib/libpthread/man/pthread_kill.3
Normal file
75
lib/libpthread/man/pthread_kill.3
Normal file
@ -0,0 +1,75 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt PTHREAD_KILL 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_kill
|
||||
.Nd send a signal to a specified thread
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn pthread_kill "pthread_t thread" "int sig"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_kill
|
||||
function sends a signal, specified by
|
||||
.Fa sig ,
|
||||
to a thread, specified by
|
||||
.Fa thread .
|
||||
If
|
||||
.Fa sig
|
||||
is 0, error checking is performed, but no signal is actually sent.
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn pthread_kill
|
||||
returns 0.
|
||||
Otherwise, an error number is returned.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_kill
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ESRCH
|
||||
.Fa thread
|
||||
is an invalid thread ID.
|
||||
.It Bq Er EINVAL
|
||||
.Fa sig
|
||||
is an invalid or unsupported signal number.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr kill 2 ,
|
||||
.Xr pthread_self 3 ,
|
||||
.Xr raise 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_kill
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
172
lib/libpthread/man/pthread_mutexattr.3
Normal file
172
lib/libpthread/man/pthread_mutexattr.3
Normal file
@ -0,0 +1,172 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 1, 2000
|
||||
.Dt PTHREAD_MUTEXATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_mutexattr
|
||||
.Nd mutex attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_init "pthread_mutexattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_destroy "pthread_mutexattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_setprioceiling "pthread_mutexattr_t *attr" "int prioceiling"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_getprioceiling "pthread_mutexattr_t *attr" "int *prioceiling"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_setprotocol "pthread_mutexattr_t *attr" "int protocol"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_getprotocol "pthread_mutexattr_t *attr" "int *protocol"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_settype "pthread_mutexattr_t *attr" "int type"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_gettype "pthread_mutexattr_t *attr" "int *type"
|
||||
.Sh DESCRIPTION
|
||||
Mutex attributes are used to specify parameters to
|
||||
.Fn pthread_mutex_init .
|
||||
One attribute object can be used in multiple calls to
|
||||
.Fn pthread_mutex_init ,
|
||||
with or without modifications between calls.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_init
|
||||
function initializes
|
||||
.Fa attr
|
||||
with all the default mutex attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_destroy
|
||||
function destroys
|
||||
.Fa attr .
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_set*
|
||||
functions set the attribute that corresponds to each function name.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_get*
|
||||
functions copy the value of the attribute that corresponds to each function name
|
||||
to the location pointed to by the second function parameter.
|
||||
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicacte the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_mutexattr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_setprioceiling
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa prioceiling .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_getprioceiling
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_setprotocol
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa protocol .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_getprotocol
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_settype
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa type .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_gettype
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_mutex_init 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_mutexattr_init
|
||||
and
|
||||
.Fn pthread_mutexattr_destroy
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
||||
|
||||
.Fn pthread_mutexattr_setprioceiling ,
|
||||
.Fn pthread_mutexattr_getprioceiling ,
|
||||
.Fn pthread_mutexattr_setprotocol ,
|
||||
.Fn pthread_mutexattr_getprotocol ,
|
||||
.Fn pthread_mutexattr_settype ,
|
||||
and
|
||||
.Fn pthread_mutexattr_gettype
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
89
lib/libpthread/man/pthread_schedparam.3
Normal file
89
lib/libpthread/man/pthread_schedparam.3
Normal file
@ -0,0 +1,89 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 1, 2000
|
||||
.Dt PTHREAD_SCHEDPARAM 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_schedparam
|
||||
.Nd thread scheduling parameter manipulation
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_setschedparam "pthread_t thread" "int policy" "const struct sched_param *param"
|
||||
.Ft int
|
||||
.Fn pthread_getschedparam "pthread_t thread" "int *policy" "struct sched_param *param"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_setschedparam
|
||||
and
|
||||
.Fn pthread_getschedparam
|
||||
functions set and get the scheduling parameters of individual threads.
|
||||
The scheduling policy for a thread can either be
|
||||
.Dv SCHED_FIFO
|
||||
(first in, first out) or
|
||||
.Dv SCHED_RR
|
||||
(round-robin).
|
||||
The thread priority (accessed via
|
||||
.Va param->sched_priority )
|
||||
must be at least
|
||||
.Dv PTHREAD_MIN_PRIORITY
|
||||
and no more than
|
||||
.Dv PTHREAD_MAX_PRIORITY .
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_setschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Va policy .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid value for scheduling parameters.
|
||||
.It Bq Er ESRCH
|
||||
Non-existent thread
|
||||
.Va thread .
|
||||
.El
|
||||
|
||||
.Fn pthread_getschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ESRCH
|
||||
Non-existent thread
|
||||
.Va thread .
|
||||
.El
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_setschedparam
|
||||
and
|
||||
.Fn pthread_getschedparam
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
96
lib/libpthread/man/pthread_sigmask.3
Normal file
96
lib/libpthread/man/pthread_sigmask.3
Normal file
@ -0,0 +1,96 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt PTHREAD_SIGMASK 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_sigmask
|
||||
.Nd examine and/or change a thread's signal mask
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn pthread_sigmask "int how" "const sigset_t *set" "sigset_t *oset"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_sigmask
|
||||
function examines and/or changes the calling thread's signal mask.
|
||||
.Pp
|
||||
If
|
||||
.Fa set
|
||||
is not
|
||||
.Dv NULL ,
|
||||
it specifies a set of signals to be modified, and
|
||||
.Fa how
|
||||
specifies what to set the signal mask to:
|
||||
.Bl -tag -width SIG_UNBLOCK
|
||||
.It Dv SIG_BLOCK
|
||||
Union of the current mask and
|
||||
.Fa set .
|
||||
.It Dv SIG_UNBLOCK
|
||||
Intersection of the current mask and the complement of
|
||||
.Fa set .
|
||||
.It Dv SIG_SETMASK
|
||||
.Fa set .
|
||||
.El
|
||||
.Pp
|
||||
If
|
||||
.Fa oset
|
||||
is not NULL, the previous signal mask is stored in the location pointed to by
|
||||
.Fa oset .
|
||||
.Pp
|
||||
.Dv SIGKILL
|
||||
and
|
||||
.Dv SIGSTOP
|
||||
cannot be blocked, and will be silently ignored if included in the signal mask.
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn pthread_sigmask
|
||||
returns 0.
|
||||
Otherwise, an error is returned.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_sigmask
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa how
|
||||
is not one of the defined values.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigpending 2 ,
|
||||
.Xr sigprocmask 2 ,
|
||||
.Xr sigsetops 3 ,
|
||||
.Xr sigsuspend 2
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_sigmask
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
85
lib/libpthread/man/sigwait.3
Normal file
85
lib/libpthread/man/sigwait.3
Normal file
@ -0,0 +1,85 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt SIGWAIT 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm sigwait
|
||||
.Nd select a set of signals
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn sigwait "const sigset_t *set" "int *sig"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn sigwait
|
||||
function selects a set of signals, specified by
|
||||
.Fa set .
|
||||
If none of the selected signals are pending,
|
||||
.Fn sigwait
|
||||
waits until one or more of the selected signals has been generated.
|
||||
Then
|
||||
.Fn sigwait
|
||||
atomically clears one of the selected signals from the set of pending signals
|
||||
for the process and sets the location pointed to by
|
||||
.Fa sig
|
||||
to the signal number that was cleared.
|
||||
.Pp
|
||||
The signals specified by
|
||||
.Fa set
|
||||
should be blocked at the time of the call to
|
||||
.Fn sigwait .
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn sigwait
|
||||
returns 0 and sets the location pointed to by
|
||||
.Fa sig
|
||||
to the cleared signal number.
|
||||
Otherwise, an error number is returned.
|
||||
.Sh ERRORS
|
||||
.Fn sigwait
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa set
|
||||
specifies one or more invalid signal numbers.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr pause 3 ,
|
||||
.Xr pthread_sigmask 3 ,
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigpending 2 ,
|
||||
.Xr sigsuspend 2
|
||||
.Sh STANDARDS
|
||||
.Fn sigwait
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
@ -41,9 +41,11 @@ pthread_attr_setschedparam(pthread_attr_t *attr, const struct sched_param *param
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) || (param == NULL))
|
||||
if ((attr == NULL) || (*attr == NULL))
|
||||
ret = EINVAL;
|
||||
else
|
||||
else if (param == NULL) {
|
||||
ret = ENOTSUP;
|
||||
} else
|
||||
(*attr)->prio = param->sched_priority;
|
||||
|
||||
return(ret);
|
||||
|
@ -41,10 +41,11 @@ pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) || (policy < SCHED_FIFO) ||
|
||||
(policy > SCHED_RR))
|
||||
if ((attr == NULL) || (*attr == NULL))
|
||||
ret = EINVAL;
|
||||
else
|
||||
else if ((policy < SCHED_FIFO) || (policy > SCHED_RR)) {
|
||||
ret = ENOTSUP;
|
||||
} else
|
||||
(*attr)->sched_policy = policy;
|
||||
|
||||
return(ret);
|
||||
|
@ -41,21 +41,14 @@ pthread_attr_setscope(pthread_attr_t *attr, int contentionscope)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
if ((attr == NULL) || (*attr == NULL) ||
|
||||
(contentionscope != PTHREAD_SCOPE_PROCESS) ||
|
||||
(contentionscope != PTHREAD_SCOPE_SYSTEM))
|
||||
if ((attr == NULL) || (*attr == NULL)) {
|
||||
/* Return an invalid argument: */
|
||||
ret = EINVAL;
|
||||
|
||||
else if (contentionscope == PTHREAD_SCOPE_SYSTEM)
|
||||
/* We don't support system wide contention: */
|
||||
#ifdef NOT_YET
|
||||
} else if ((contentionscope != PTHREAD_SCOPE_PROCESS) ||
|
||||
(contentionscope != PTHREAD_SCOPE_SYSTEM)) {
|
||||
/* We don't support PTHREAD_SCOPE_SYSTEM. */
|
||||
ret = ENOTSUP;
|
||||
#else
|
||||
ret = EOPNOTSUPP;
|
||||
#endif
|
||||
|
||||
else
|
||||
} else
|
||||
(*attr)->flags |= contentionscope;
|
||||
|
||||
return(ret);
|
||||
|
@ -76,4 +76,19 @@ pthread_mutexattr_settype(pthread_mutexattr_t *attr, int type)
|
||||
}
|
||||
return(ret);
|
||||
}
|
||||
|
||||
int
|
||||
pthread_mutexattr_gettype(pthread_mutexattr_t *attr, int *type)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (attr == NULL || *attr == NULL || (*attr)->m_type >=
|
||||
MUTEX_TYPE_MAX) {
|
||||
ret = EINVAL;
|
||||
} else {
|
||||
*type = (*attr)->m_type;
|
||||
ret = 0;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
@ -43,14 +43,16 @@ pthread_setschedparam(pthread_t pthread, int policy,
|
||||
{
|
||||
int old_prio, in_readyq = 0, ret = 0;
|
||||
|
||||
if ((param == NULL) || (param->sched_priority < PTHREAD_MIN_PRIORITY) ||
|
||||
(param->sched_priority > PTHREAD_MAX_PRIORITY) ||
|
||||
(policy < SCHED_FIFO) || (policy > SCHED_RR))
|
||||
if ((param == NULL) || (policy < SCHED_FIFO) || (policy > SCHED_RR)) {
|
||||
/* Return an invalid argument error: */
|
||||
ret = EINVAL;
|
||||
} else if ((param->sched_priority < PTHREAD_MIN_PRIORITY) ||
|
||||
(param->sched_priority > PTHREAD_MAX_PRIORITY)) {
|
||||
/* Return an unsupported value error. */
|
||||
ret = ENOTSUP;
|
||||
|
||||
/* Find the thread in the list of active threads: */
|
||||
else if ((ret = _find_thread(pthread)) == 0) {
|
||||
} else if ((ret = _find_thread(pthread)) == 0) {
|
||||
/*
|
||||
* Defer signals to protect the scheduling queues from
|
||||
* access by the signal handler:
|
||||
|
200
share/man/man3/pthread_attr.3
Normal file
200
share/man/man3/pthread_attr.3
Normal file
@ -0,0 +1,200 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 28, 2000
|
||||
.Dt PTHREAD_ATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_attr
|
||||
.Nd thread attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_attr_init "pthread_attr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_destroy "pthread_attr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setstacksize "pthread_attr_t *attr" "size_t stacksize"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getstacksize "const pthread_attr_t *attr" "size_t *stacksize"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setstackaddr "pthread_attr_t *attr" "void *stackaddr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getstackaddr "const pthread_attr_t *attr" "void **stackaddr"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setdetachstate "pthread_attr_t *attr" "int detachstate"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getdetachstate "const pthread_attr_t *attr" "int *detachstate"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setinheritsched "pthread_attr_t *attr" "int inheritsched"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getinheritsched "const pthread_attr_t *attr" "int *inheritsched"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setschedparam "pthread_attr_t *attr" "const struct sched_param *param"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getschedparam "const pthread_attr_t *attr" "struct schedparam *param"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setschedpolicy "pthread_attr_t *attr" "int policy"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getschedpolicy "const pthread_attr_t *attr" "int *policy"
|
||||
.Ft int
|
||||
.Fn pthread_attr_setscope "pthread_attr_t *attr" "int contentionscope"
|
||||
.Ft int
|
||||
.Fn pthread_attr_getscope "const pthread_attr_t *attr" "int *contentionscope"
|
||||
.Sh DESCRIPTION
|
||||
Thread attributes are used to specify parameters to
|
||||
.Fn pthread_create .
|
||||
One attribute object can be used in multiple calls to
|
||||
.Fn pthread_create ,
|
||||
with or without modifications between calls.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_init
|
||||
function initializes
|
||||
.Fa attr
|
||||
with all the default thread attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_destroy
|
||||
function destroys
|
||||
.Fa attr .
|
||||
|
||||
The
|
||||
.Fn pthread_attr_set*
|
||||
functions set the attribute that corresponds to each function name.
|
||||
|
||||
The
|
||||
.Fn pthread_attr_get*
|
||||
functions copy the value of the attribute that corresponds to each function name
|
||||
to the location pointed to by the second function parameter.
|
||||
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_attr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
|
||||
.Fn pthread_attr_setstacksize
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa stacksize
|
||||
is less than
|
||||
.Dv PTHREAD_STACK_MIN .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setdetachstate
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa detachstate .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setinheritsched
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid value for
|
||||
.Fa param .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setschedpolicy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid or unsupported value for
|
||||
.Fa policy .
|
||||
.El
|
||||
|
||||
.Fn pthread_attr_setscope
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid or unsupported value for
|
||||
.Fa contentionscope .
|
||||
.El
|
||||
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_create 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_attr_init ,
|
||||
.Fn pthread_attr_destroy ,
|
||||
.Fn pthread_attr_setstacksize ,
|
||||
.Fn pthread_attr_getstacksize ,
|
||||
.Fn pthread_attr_setstackaddr ,
|
||||
.Fn pthread_attr_getstackaddr ,
|
||||
.Fn pthread_attr_setdetachstate ,
|
||||
and
|
||||
.Fn pthread_attr_getdetachstate
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
||||
|
||||
.Fn pthread_attr_setinheritsched ,
|
||||
.Fn pthread_attr_getinheritsched ,
|
||||
.Fn pthread_attr_setschedparam ,
|
||||
.Fn pthread_attr_getschedparam ,
|
||||
.Fn pthread_attr_setschedpolicy ,
|
||||
.Fn pthread_attr_getschedpolicy ,
|
||||
.Fn pthread_attr_setscope ,
|
||||
and
|
||||
.Fn pthread_attr_getscope
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
82
share/man/man3/pthread_condattr.3
Normal file
82
share/man/man3/pthread_condattr.3
Normal file
@ -0,0 +1,82 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 28, 2000
|
||||
.Dt PTHREAD_CONDATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_condattr
|
||||
.Nd condition attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_condattr_init "pthread_condattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_condattr_destroy "pthread_condattr_t *attr"
|
||||
.Sh DESCRIPTION
|
||||
Condition attribute objects are used to specify parameters to
|
||||
.Fn pthread_cond_init .
|
||||
FreeBSD's implementation of conditions does not support any non-default
|
||||
attributes, so these functions are not very useful, though they are required to
|
||||
to be present by POSIX.
|
||||
|
||||
The
|
||||
.Fn pthread_condattr_init
|
||||
function initializes a condition attribute object with the default attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_condattr_destroy
|
||||
function destroys a condition attribute object.
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_condattr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_condattr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_cond_init 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_condattr_init
|
||||
and
|
||||
.Fn pthread_condattr_destroy
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
75
share/man/man3/pthread_kill.3
Normal file
75
share/man/man3/pthread_kill.3
Normal file
@ -0,0 +1,75 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt PTHREAD_KILL 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_kill
|
||||
.Nd send a signal to a specified thread
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn pthread_kill "pthread_t thread" "int sig"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_kill
|
||||
function sends a signal, specified by
|
||||
.Fa sig ,
|
||||
to a thread, specified by
|
||||
.Fa thread .
|
||||
If
|
||||
.Fa sig
|
||||
is 0, error checking is performed, but no signal is actually sent.
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn pthread_kill
|
||||
returns 0.
|
||||
Otherwise, an error number is returned.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_kill
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ESRCH
|
||||
.Fa thread
|
||||
is an invalid thread ID.
|
||||
.It Bq Er EINVAL
|
||||
.Fa sig
|
||||
is an invalid or unsupported signal number.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr kill 2 ,
|
||||
.Xr pthread_self 3 ,
|
||||
.Xr raise 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_kill
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
172
share/man/man3/pthread_mutexattr.3
Normal file
172
share/man/man3/pthread_mutexattr.3
Normal file
@ -0,0 +1,172 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 1, 2000
|
||||
.Dt PTHREAD_MUTEXATTR 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_mutexattr
|
||||
.Nd mutex attribute operations
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_init "pthread_mutexattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_destroy "pthread_mutexattr_t *attr"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_setprioceiling "pthread_mutexattr_t *attr" "int prioceiling"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_getprioceiling "pthread_mutexattr_t *attr" "int *prioceiling"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_setprotocol "pthread_mutexattr_t *attr" "int protocol"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_getprotocol "pthread_mutexattr_t *attr" "int *protocol"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_settype "pthread_mutexattr_t *attr" "int type"
|
||||
.Ft int
|
||||
.Fn pthread_mutexattr_gettype "pthread_mutexattr_t *attr" "int *type"
|
||||
.Sh DESCRIPTION
|
||||
Mutex attributes are used to specify parameters to
|
||||
.Fn pthread_mutex_init .
|
||||
One attribute object can be used in multiple calls to
|
||||
.Fn pthread_mutex_init ,
|
||||
with or without modifications between calls.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_init
|
||||
function initializes
|
||||
.Fa attr
|
||||
with all the default mutex attributes.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_destroy
|
||||
function destroys
|
||||
.Fa attr .
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_set*
|
||||
functions set the attribute that corresponds to each function name.
|
||||
|
||||
The
|
||||
.Fn pthread_mutexattr_get*
|
||||
functions copy the value of the attribute that corresponds to each function name
|
||||
to the location pointed to by the second function parameter.
|
||||
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicacte the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_mutexattr_init
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ENOMEM
|
||||
Out of memory.
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_destroy
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_setprioceiling
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa prioceiling .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_getprioceiling
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_setprotocol
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa protocol .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_getprotocol
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_settype
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr ,
|
||||
or invalid value for
|
||||
.Fa type .
|
||||
.El
|
||||
|
||||
.Fn pthread_mutexattr_gettype
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Fa attr .
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr pthread_mutex_init 3
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_mutexattr_init
|
||||
and
|
||||
.Fn pthread_mutexattr_destroy
|
||||
conform to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
||||
|
||||
.Fn pthread_mutexattr_setprioceiling ,
|
||||
.Fn pthread_mutexattr_getprioceiling ,
|
||||
.Fn pthread_mutexattr_setprotocol ,
|
||||
.Fn pthread_mutexattr_getprotocol ,
|
||||
.Fn pthread_mutexattr_settype ,
|
||||
and
|
||||
.Fn pthread_mutexattr_gettype
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
89
share/man/man3/pthread_schedparam.3
Normal file
89
share/man/man3/pthread_schedparam.3
Normal file
@ -0,0 +1,89 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 1, 2000
|
||||
.Dt PTHREAD_SCHEDPARAM 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_schedparam
|
||||
.Nd thread scheduling parameter manipulation
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <pthread.h>
|
||||
.Ft int
|
||||
.Fn pthread_setschedparam "pthread_t thread" "int policy" "const struct sched_param *param"
|
||||
.Ft int
|
||||
.Fn pthread_getschedparam "pthread_t thread" "int *policy" "struct sched_param *param"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_setschedparam
|
||||
and
|
||||
.Fn pthread_getschedparam
|
||||
functions set and get the scheduling parameters of individual threads.
|
||||
The scheduling policy for a thread can either be
|
||||
.Dv SCHED_FIFO
|
||||
(first in, first out) or
|
||||
.Dv SCHED_RR
|
||||
(round-robin).
|
||||
The thread priority (accessed via
|
||||
.Va param->sched_priority )
|
||||
must be at least
|
||||
.Dv PTHREAD_MIN_PRIORITY
|
||||
and no more than
|
||||
.Dv PTHREAD_MAX_PRIORITY .
|
||||
.Sh RETURN VALUES
|
||||
If successful, these functions return 0.
|
||||
Otherwise, an error number is returned to indicate the error.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_setschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
Invalid value for
|
||||
.Va policy .
|
||||
.It Bq Er ENOTSUP
|
||||
Invalid value for scheduling parameters.
|
||||
.It Bq Er ESRCH
|
||||
Non-existent thread
|
||||
.Va thread .
|
||||
.El
|
||||
|
||||
.Fn pthread_getschedparam
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er ESRCH
|
||||
Non-existent thread
|
||||
.Va thread .
|
||||
.El
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_setschedparam
|
||||
and
|
||||
.Fn pthread_getschedparam
|
||||
conform to the Single UNIX Specification, Version 2
|
||||
.Pq Dq Tn SUSv2 .
|
96
share/man/man3/pthread_sigmask.3
Normal file
96
share/man/man3/pthread_sigmask.3
Normal file
@ -0,0 +1,96 @@
|
||||
.\" Copyright (C) 2000 Jason Evans <jasone@canonware.com>.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" 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(s), this list of conditions and the following disclaimer as
|
||||
.\" the first lines of this file unmodified other than the possible
|
||||
.\" addition of one or more copyright notices.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 27, 2000
|
||||
.Dt PTHREAD_SIGMASK 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pthread_sigmask
|
||||
.Nd examine and/or change a thread's signal mask
|
||||
.Sh LIBRARY
|
||||
.Lb libc_r
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <signal.h>
|
||||
.Ft int
|
||||
.Fn pthread_sigmask "int how" "const sigset_t *set" "sigset_t *oset"
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pthread_sigmask
|
||||
function examines and/or changes the calling thread's signal mask.
|
||||
.Pp
|
||||
If
|
||||
.Fa set
|
||||
is not
|
||||
.Dv NULL ,
|
||||
it specifies a set of signals to be modified, and
|
||||
.Fa how
|
||||
specifies what to set the signal mask to:
|
||||
.Bl -tag -width SIG_UNBLOCK
|
||||
.It Dv SIG_BLOCK
|
||||
Union of the current mask and
|
||||
.Fa set .
|
||||
.It Dv SIG_UNBLOCK
|
||||
Intersection of the current mask and the complement of
|
||||
.Fa set .
|
||||
.It Dv SIG_SETMASK
|
||||
.Fa set .
|
||||
.El
|
||||
.Pp
|
||||
If
|
||||
.Fa oset
|
||||
is not NULL, the previous signal mask is stored in the location pointed to by
|
||||
.Fa oset .
|
||||
.Pp
|
||||
.Dv SIGKILL
|
||||
and
|
||||
.Dv SIGSTOP
|
||||
cannot be blocked, and will be silently ignored if included in the signal mask.
|
||||
.Sh RETURN VALUES
|
||||
If successful,
|
||||
.Fn pthread_sigmask
|
||||
returns 0.
|
||||
Otherwise, an error is returned.
|
||||
.Sh ERRORS
|
||||
.Fn pthread_sigmask
|
||||
will fail if:
|
||||
.Bl -tag -width Er
|
||||
.It Bq Er EINVAL
|
||||
.Fa how
|
||||
is not one of the defined values.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr sigaction 2 ,
|
||||
.Xr sigpending 2 ,
|
||||
.Xr sigprocmask 2 ,
|
||||
.Xr sigsetops 3 ,
|
||||
.Xr sigsuspend 2
|
||||
.Sh STANDARDS
|
||||
.Fn pthread_sigmask
|
||||
conforms to ISO/IEC 9945-1 ANSI/IEEE
|
||||
.Pq Dq Tn POSIX
|
||||
Std 1003.1 1996 Edition.
|
Loading…
x
Reference in New Issue
Block a user