summaryrefslogtreecommitdiff
path: root/docs/man/nng_cv_until.3supp.adoc
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2024-03-25 21:11:43 -0700
committerGarrett D'Amore <garrett@damore.org>2024-03-25 21:11:43 -0700
commit9d71bbc9f67478ccc28bf6ea9cb1617e8293be94 (patch)
tree5f8da683d30f024b705df82754be3a17c6ad6327 /docs/man/nng_cv_until.3supp.adoc
parent331bd5a7c360083f245fe6c82afa38dd05c4a9c9 (diff)
downloadnng-9d71bbc9f67478ccc28bf6ea9cb1617e8293be94.tar.gz
nng-9d71bbc9f67478ccc28bf6ea9cb1617e8293be94.tar.bz2
nng-9d71bbc9f67478ccc28bf6ea9cb1617e8293be94.zip
More updates
Diffstat (limited to 'docs/man/nng_cv_until.3supp.adoc')
-rw-r--r--docs/man/nng_cv_until.3supp.adoc91
1 files changed, 0 insertions, 91 deletions
diff --git a/docs/man/nng_cv_until.3supp.adoc b/docs/man/nng_cv_until.3supp.adoc
deleted file mode 100644
index 9cf7c714..00000000
--- a/docs/man/nng_cv_until.3supp.adoc
+++ /dev/null
@@ -1,91 +0,0 @@
-= nng_cv_until(3supp)
-//
-// Copyright 2021 Staysail Systems, Inc. <info@staysail.tech>
-// Copyright 2018 Capitar IT Group BV <info@capitar.com>
-//
-// 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_cv_until - wait for condition or timeout
-
-== SYNOPSIS
-
-[source, c]
-----
-#include <nng/nng.h>
-#include <nng/supplemental/util/platform.h>
-
-int nng_cv_until(nng_cv *cv, nng_time when);
-----
-
-== DESCRIPTION
-
-The `nng_cv_until()` waits until either the condition variable _cv_ is signaled
-by another thread calling either xref:nng_cv_wake.3supp.adoc[`nng_cv_wake()`] or
-xref:nng_cv_wake1.3supp.adoc[`nng_cv_wake1()`], or the system clock (as tracked
-by xref:nng_clock.3supp.adoc[`nng_clock()`]) reaches _when_.
-
-The caller must have have ownership of the mutex that was used when
-_cv_ was allocated.
-This function will drop the ownership of that mutex, and reacquire it
-atomically just before returning to the caller.
-(The waiting is done without holding the mutex.)
-
-NOTE: Any condition may be used or checked, but the condition must be
-checked, as it is possible for this function to wake up spuriously.
-The best way to do this is inside a loop that repeats until the condition
-tests for true.
-
-== EXAMPLE
-
-The following example demonstrates use of this function:
-
-.Example 1: Waiting for the condition
-[source, c]
-----
-
- expire = nng_clock() + 1000; // 1 second in the future
- nng_mtx_lock(m); // assume cv was allocated using m
- while (!condition_true) {
- if (nng_cv_until(cv, expire) == NNG_ETIMEDOUT) {
- printf("Time out reached!\n");
- break;
- }
- }
- // condition_true is true
- nng_mtx_unlock(m);
-----
-
-.Example 2: Signaling the condition
-[source, c]
-----
- nng_mtx_lock(m);
- condition_true = true;
- nng_cv_wake(cv);
- nng_mtx_unlock(m);
-----
-
-== RETURN VALUES
-
-None.
-
-== ERRORS
-
-None.
-
-== SEE ALSO
-
-[.text-left]
-xref:nng_cv_alloc.3supp.adoc[nng_cv_alloc(3supp)],
-xref:nng_cv_wait.3supp.adoc[nng_cv_wait(3supp)],
-xref:nng_cv_wake.3supp.adoc[nng_cv_wake(3supp)],
-xref:nng_cv_wake1.3supp.adoc[nng_cv_wake1(3supp)],
-xref:nng_mtx_alloc.3supp.adoc[nng_mtx_alloc(3supp)],
-xref:nng_mtx_lock.3supp.adoc[nng_mtx_lock(3supp)],
-xref:nng_mtx_unlock.3supp.adoc[nng_mtx_unlock(3supp)],
-xref:nng.7.adoc[nng(7)]