---
name: "nng_aio_wait"
section: "3"
platform: "linux"
package: "libnng-dev"
version: "1.10.1-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/nng_aio_wait"
---

# nng\_aio\_wait(3)

wait for asynchronous I/O operation

## NAME

nng\_aio\_wait - wait for asynchronous I/O operation

## SYNOPSIS

```
#include <nng/nng.h>
void nng_aio_wait(nng_aio *aio);
```

## DESCRIPTION

The `nng_aio_wait()` function waits for an asynchronous I/O operation to complete. If the operation has not been started, or has already completed, then it returns immediately.

If a callback was set with *aio* when it was allocated, then this function will not be called until the callback has completed.

**Important**\

This function should never be called from a function that itself is a callback of an `aio`, either this one or any other. Doing so may result in a deadlock.

## RETURN VALUES

None.

## ERRORS

None.

## SEE ALSO

[nng\_aio\_abort(3)](/nng_aio_abort/3.md), [nng\_aio\_alloc(3)](/nng_aio_alloc/3.md), nng\_aio\_busy(3), [nng\_aio(5)](/nng_aio/5.md), [nng(7)](/nng/7.md)
