インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
ファイル記述子 fd の非同期 I/O 要求を取り消します。
int aio_cancel(HANDLE fd, struct aiocb *aiocbp); |
fd |
ファイル記述子 |
*aiocbp |
非同期 I/O 要求が生成される制御ブロックへのポインター |
aio_cancel() 関数は、ファイル記述子 fd の非同期 I/O 要求を取り消します。aiocbp が NULL の場合、すべての非同期 I/O 要求が取り消されます。aiocbp が NULL でない場合、aiocbp で指定された制御ブロックによって記述された要求のみが取り消されます。
取り消された要求に対して、通常の非同期通知が発行されます。要求のリターンステータスは -1 に設定され、要求のエラーステータスは ECANCELED に設定されます。取り消すことができない要求の制御ブロックは変更されません。
aiocbp が NULL ではなく、fd が非同期操作を開始したファイル記述子ではない場合の結果は不定です。
AIO_CANCELLED: 指定されたすべての要求が取り消された場合。
AIO_NOTCANCELLED: 指定された要求の中、少なくとも 1 つがまだ取り消し中の場合。aio_error を使用して、要求のステータスを確認できます。
AIO_ALLDONE: 取り消す前に指定されたすべての要求が完了した場合。
-1: エラーが発生した場合。正確なエラーコードを取得するには、errno を使用します。