aboutsummaryrefslogtreecommitdiff
path: root/src/core/aio.h
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2022-04-18 10:25:03 -0400
committerGarrett D'Amore <garrett@damore.org>2022-04-18 17:41:21 -0400
commit722bf4621703ef238fa81018f8c3e68bcef91354 (patch)
tree1389cd6082ecae9ab0db1239f48861ebefea3c4c /src/core/aio.h
parentd9897897fcf9d1276190b5d20955c72fd632acac (diff)
downloadnng-722bf4621703ef238fa81018f8c3e68bcef91354.tar.gz
nng-722bf4621703ef238fa81018f8c3e68bcef91354.tar.bz2
nng-722bf4621703ef238fa81018f8c3e68bcef91354.zip
fixes #1574 Non-blocking version of nng_aio_wait / nng_aio_result
This introduces a new API, nng_aio_busy(), that can be used to query the status of the aio without blocking. Some minor documentation fixes are included.
Diffstat (limited to 'src/core/aio.h')
-rw-r--r--src/core/aio.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/aio.h b/src/core/aio.h
index d1d4cf79..6315e90c 100644
--- a/src/core/aio.h
+++ b/src/core/aio.h
@@ -1,5 +1,5 @@
//
-// Copyright 2021 Staysail Systems, Inc. <info@staysail.tech>
+// Copyright 2022 Staysail Systems, Inc. <info@staysail.tech>
// Copyright 2018 Capitar IT Group BV <info@capitar.com>
//
// This software is supplied under the terms of the MIT License, a
@@ -93,6 +93,10 @@ extern int nni_aio_result(nni_aio *);
// completed.
extern size_t nni_aio_count(nni_aio *);
+// nni_aio_busy returns true if the aio is still busy processing work.
+// This is a non-blocking form of the check used by nni_aio_wait().
+extern bool nni_aio_busy(nni_aio *);
+
// nni_aio_wait blocks the caller until the operation is complete.
// The operation must have already been started. This routine will
// block until the AIO, as well as any callback, has completed execution.