smtx_init(3)		   Library Functions Manual		  smtx_init(3)

NAME
     smtx_init – initialize a spinlock

SYNOPSIS
     library “threads”
     #include <threadse.h>

     int
     smtx_init(smtx_t *s, int type);

DESCRIPTION
     The function smtx_init() initializes a spinlock with the given type.

     The type argument can be either of

     smtx_private
	     the spinlock is not shared among child processes.

     smtx_shared
	     the spinlock is shared among child processes.  This is not
	     supported on MacOS.

RETURN VALUES
     Upon success smtx_init() returns thrd_success, otherwise thrd_error will
     be returned.

SEE ALSO
     smtx_destroy(3) smtx_lock(3) smtx_trylock(3) smtx_unlock(3)

HISTORY
     The smtx_init() function first appeared in the Adelsbach Enhanced
     Threading Library.	 MacOS support was added in version 1.0.1 using an
     implementation with atomic variables.

AUTHORS
     Jan Adelsbach <jan@jadelsbach.de>

Linux 6.13.6-1-default		March 30, 2025		Linux 6.13.6-1-default