AIO_CANCEL

Section: Linux Programmer's Manual (3)
Updated: 2003-11-14
Index JM Home Page roff page
 

名前

aio_cancel - 完了していない非同期 I/O リクエストをキャンセルする  

書式

#include <aio.h>

int aio_cancel(int fd, struct aiocb *aiocbp);  

説明

aio_cancel() 関数は、ファイルディスクリプタ fd についての完了していない非同期 I/O リクエストをキャンセルしようとする。 aiocbp が NULL の場合、そのような全てのリクエストがキャンセルされる。 aiocbp が NULL でない場合、 aiocbp で指された制御ブロックで記述されたリクエストのみがキャンセルされる。

キャンセルされたリクエストに対して、通常の非同期通知が起こる。 リクエストの返り値は -1 に設定され、 リクエストのエラー状態は ECANCELED に設定される。 キャンセルできなかったリクエストの制御ブロックは変更されない。

aiocbp が NULL でなく、かつ fd が非同期操作が開始されたファイルディスクリプタと異なる場合、 生じる結果は不定である。

どの操作をキャンセルできるかは、実装定義である。  

返り値

全てのリクエストのキャンセルが成功した場合、この関数は AIO_CANCELED を返す。 指定されたリクエストのうち少なくとも 1 つが進行中であるために キャンセルできなかった場合は、 AIO_NOTCANCELED が返される。 この場合は、 aio_error(3) を使って個々のリクエストの状態をチェックすることができる。 呼び出される前に全てのリクエストが完了していた場合、 この関数は AIO_ALLDONE を返す。 何らかのエラーが起こった場合は、-1 が返されて、 errno が適切に設定される。  

エラー

EBADF
fd が有効なファイルディスクリプタでない。
 

準拠

POSIX.1-2001  

関連項目

aio_error(3), aio_fsync(3), aio_read(3), aio_return(3), aio_suspend(3), aio_write(3)


 

Index

名前
書式
説明
返り値
エラー
準拠
関連項目

This document was created by man2html, using the manual pages.
Time: 04:31:31 GMT, November 19, 2007