# nng_aio_finish(3) Manual Page

## NAME

nng_aio_finish - finish asynchronous I/O operation

## SYNOPSIS

    #include <nng/nng.h>

    void nng_aio_finish(nng_aio *aio, int err);

## DESCRIPTION

The `nng_aio_finish()` function marks operation associated with aio as complete, with the status err. This will be the result returned by `nng_aio_result()`.

This function causes the callback associated with the aio to called.

| It is mandatory that operation providers call this function exactly once when they are finished with the operation. After calling this function they must not perform any further accesses to the aio.

| 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 have any need for this function.

## RETURN VALUES

None.

## ERRORS

None.

## SEE ALSO

nng_aio_alloc(3), nng_aio_begin(3), nng_aio_cancel(3), nng_aio_defer(3), nng_aio_result(3), nng_aio(5), nng(7)