As I understand it calling aio_return
is necessary to finalize aio_read
and aio_write
calls. So the normal flow is something like
- Call
aio_read
- Determine that the read has completed (with
aio_error
,aio_suspend
or receiving a signal viaaio_sigevent
- Call
aio_return
to finalize the read.
(steps 2 and 3 can be done with the aio_waitcomplete
extension)
Is it necessary to call aio_return
if the io is cancelled with aio_cancel
, or does the cancel also finalise the io?
Also, does this depend on the implementation?