summaryrefslogtreecommitdiff
path: root/docs/ref/aio/nng_aio_count.adoc
blob: a2e40d44b8324332076a88dbcbe73ad80e067a14 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
## nng_aio_count

Return number of bytes transferred.

### Synopsis

```c
#include <nng/nng.h>

size_t nng_aio_count(nng_aio *aio);
```

### Description

The `nng_aio_count` returns the number of bytes transferred by the asynchronous operation associated with the handle _aio_.

Some asynchronous operations do not provide meaningful data for this function.
For example operations that establish connections do not transfer user data (they may transfer protocol data though).
In this case this function will generally return zero.

This function is most useful when used with operations that make use of
of a scatter/gather vector (set by xref:nng_aio_set_iov.adoc[`nng_aio_set_iov`]).

NOTE: The return value from this function is undefined if the operation has not completed yet.
Either call this from the handle's completion callback, or after waiting for the operation to complete with xref:nng_aio_wait.adoc[`nng_aio_wait`].

### Return Values

The number of bytes transferred by the operation.

### See Also

xref:nng_aio_result.adoc[nng_aio_result],
xref:nng_aio_set_iov.adoc[nng_aio_set_iov],
xref:nng_aio_wait.adoc[nng_aio_wait]