= nng_aio_free(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_free - free asynchronous I/O handle

== SYNOPSIS

[source, c]
----
#include <nng/nng.h>

void nng_aio_free(nng_aio *aio);
----

== DESCRIPTION

The `nng_aio_free()` function frees an allocated asynchronous I/O handle.
If any operation is in progress, the operation is canceled, and the
caller is blocked until the operation is completely canceled, to ensure
that it is safe to deallocate the handle and any associated resources.
(This is done by implicitly calling `<<nng_aio_stop.3#,nng_aio_stop()>>`.)

== RETURN VALUES

None.

== ERRORS

None.

== SEE ALSO

<<nng_aio_alloc.3#,nng_aio_alloc(3)>>,
<<nng_aio_stop.3#,nng_aio_stop(3)>>,
<<nng_aio.5#,nng_aio(5)>>,
<<nng.7#,nng(7)>>
