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