diff options
| author | Garrett D'Amore <garrett@damore.org> | 2018-08-20 11:09:23 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2018-08-20 11:09:23 -0700 |
| commit | c72bd53e2c5b4bc7207bfa1710ccff47655a099a (patch) | |
| tree | f85e26882244430c41930c45d83887d5b01969cc /docs/man/nng_aio_begin.3.adoc | |
| parent | 6e5f6a26beec0a44d25625cacb5095cdc7a94146 (diff) | |
| download | nng-c72bd53e2c5b4bc7207bfa1710ccff47655a099a.tar.gz nng-c72bd53e2c5b4bc7207bfa1710ccff47655a099a.tar.bz2 nng-c72bd53e2c5b4bc7207bfa1710ccff47655a099a.zip | |
fixes #506 AIO "providers" need a way to call nni_aio_schedule.
Diffstat (limited to 'docs/man/nng_aio_begin.3.adoc')
| -rw-r--r-- | docs/man/nng_aio_begin.3.adoc | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/docs/man/nng_aio_begin.3.adoc b/docs/man/nng_aio_begin.3.adoc new file mode 100644 index 00000000..fd72d401 --- /dev/null +++ b/docs/man/nng_aio_begin.3.adoc @@ -0,0 +1,64 @@ += nng_aio_begin(3) +// +// Copyright 2018 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_aio_begin - begin asynchronous I/O operation + +== SYNOPSIS + +[source, c] +---- +#include <nng/nng.h> + +bool nng_aio_begin(nng_aio *aio); +---- + +== DESCRIPTION + +The `nng_aio_begin()` function is called by the I/O provider to indicate that +it is going to process the operation. + +The function may return `false`, indicating that the _aio_ has been closed +by the caller asynchronously. +In this case the provider should abandon the operation and do nothing else. + +This operation should be called at the start of any I/O operation, and must +be called not more than once for a given I/O operation on a given _aio_. + +Once this function is called, if `true` is returned, then the provider MUST +guarantee that `<<nng_aio_finish.3#nng_aio_finish()>>` is called for the _aio_ +exactly once, when the operation is complete or canceled. + +NOTE: This function is only for I/O providers (those actually performing +the operation such as HTTP handler functions or transport providers); ordinary +users of the _aio_ should not call this function. + +== RETURN VALUES + +[horizontal] +`true`:: The operation has been started. +`false`:: The operation cannot be started. + +== ERRORS + +None. + +== SEE ALSO + +[.text-left] +<<nng_aio_alloc.3#,nng_aio_alloc(3)>>, +<<nng_aio_cancel.3#,nng_aio_cancel(3)>>, +<<nng_aio_defer.3#,nng_aio_defer(3)>>, +<<nng_aio_finish.3#,nng_aio_finish(3)>>, +<<nng_aio_result.3#,nng_aio_result(3)>>, +<<nng_aio.5#,nng_aio(5)>>, +<<nng.7#,nng(7)>> |
