From 53d5c2766d90a53d3f6c0437bc59c1ad63ec701a Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Thu, 22 Mar 2018 14:06:07 -0700 Subject: Add documentation for supplemental functions. This includes platform portability stuff like mutexes and threads, etc. While here we fixed a problem with nng_opts_parse and we addressed the type of the platform API. --- docs/man/nng_mtx_alloc.3supp.adoc | 56 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 docs/man/nng_mtx_alloc.3supp.adoc (limited to 'docs/man/nng_mtx_alloc.3supp.adoc') diff --git a/docs/man/nng_mtx_alloc.3supp.adoc b/docs/man/nng_mtx_alloc.3supp.adoc new file mode 100644 index 00000000..ba4e0c06 --- /dev/null +++ b/docs/man/nng_mtx_alloc.3supp.adoc @@ -0,0 +1,56 @@ += nng_mtx_alloc(3supp) +// +// Copyright 2018 Staysail Systems, Inc. +// Copyright 2018 Capitar IT Group BV +// +// This document is supplied under the terms of the MIT License, a +// copy of which should be located in the distribution where this +// file was obtained (LICENSE.txt). A copy of the license may also be +// found online at https://opensource.org/licenses/MIT. +// + +== NAME + +nng_mtx_alloc - allocate mutex + +== SYNOPSIS + +[source, c] +---- +#include +#include + +typedef struct nng_mtx nng_mtx; + +int nng_mtx_alloc(nng_mtx **mtxp); +---- + +== DESCRIPTION + +The `nng_mtx_alloc()` function allocates mutex and returns it in _mtxp_. + +The mutex objects created by this function are suitable only for +simple lock and unlock operations, and are not recursive. +Every effort has been made to use light-weight underlying primitives when available. + +Mutex (mutual exclusion) objects can be thought of as binary semaphores, +where only a single thread of execution is permitted to "`own`" the semaphore. + +Furthermore, a mutex can only be unlocked by the thread that locked it. + +== RETURN VALUES + +This function returns 0 on success, and non-zero otherwise. + +== ERRORS + +`NNG_ENOMEM`:: Insufficient free memory exists. + +== SEE ALSO + +<>, +<>, +<>, +<>, +<>, +<> -- cgit v1.2.3-70-g09d2