summaryrefslogtreecommitdiff
path: root/static/openbsd/man3/pthread_spin_init.3
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:54:44 -0400
committerJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:54:44 -0400
commita9157ce950dfe2fc30795d43b9d79b9d1bffc48b (patch)
tree9df484304b560466d145e662c1c254ff0e9ae0ba /static/openbsd/man3/pthread_spin_init.3
parent160aa82b2d39c46ad33723d7d909cb4972efbb03 (diff)
docs: Added All OpenBSD Manuals
Diffstat (limited to 'static/openbsd/man3/pthread_spin_init.3')
-rw-r--r--static/openbsd/man3/pthread_spin_init.389
1 files changed, 89 insertions, 0 deletions
diff --git a/static/openbsd/man3/pthread_spin_init.3 b/static/openbsd/man3/pthread_spin_init.3
new file mode 100644
index 00000000..4b040f45
--- /dev/null
+++ b/static/openbsd/man3/pthread_spin_init.3
@@ -0,0 +1,89 @@
+.\" $OpenBSD: pthread_spin_init.3,v 1.4 2025/06/07 00:16:52 schwarze Exp $
+.\"
+.\" Copyright (c) 2012 Paul Irofti <paul@irofti.net>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.\"
+.Dd $Mdocdate: June 7 2025 $
+.Dt PTHREAD_SPIN_INIT 3
+.Os
+.Sh NAME
+.Nm pthread_spin_init ,
+.Nm pthread_spin_destroy
+.Nd initialize and destroy a spinlock object
+.Sh SYNOPSIS
+.Lb libpthread
+.In pthread.h
+.Ft int
+.Fn pthread_spin_init "pthread_spinlock_t *lock" "int pshared"
+.Ft int
+.Fn pthread_spin_destroy "pthread_spinlock_t *lock"
+.Sh DESCRIPTION
+The
+.Fn pthread_spin_init
+function creates a new spinlock object, with sharing attributes specified by
+.Fa pshared .
+.Pp
+The
+.Fn pthread_spin_destroy
+function frees the resources allocated for the
+.Fa lock .
+.Sh RETURN VALUES
+If successful,
+.Fn pthread_spin_init
+and
+.Fn pthread_spin_destroy
+return zero; otherwise an error number is returned to indicate the error.
+.Sh ERRORS
+.Fn pthread_spin_init
+will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+The value specified by
+.Fa lock
+is invalid.
+.It Bq Er ENOMEM
+The process cannot allocate enough memory to create another spinlock object.
+.It Bq Er ENOTSUP
+The shared attributes specified by
+.Fa pshared
+are not supported by the current implementation.
+.El
+.Pp
+.Fn pthread_spin_destroy
+will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+The value specified by
+.Fa lock
+is invalid.
+.It Bq Er EBUSY
+The lock is still in use.
+.El
+.Sh SEE ALSO
+.Xr pthread_spin_lock 3 ,
+.Xr pthread_spin_unlock 3
+.Sh STANDARDS
+.Fn pthread_spin_init
+and
+.Fn pthread_spin_destroy
+conform to
+.St -p1003.1-2008 .
+.Sh BUGS
+Currently only
+.Dv PTHREAD_PROCESS_PRIVATE
+spinlocks are supported and the pshared attribute is
+always set that way.
+Any attempts to initialize it to a different value will trigger
+.Er ENOTSUP .