other versions
other sections
AIO_READ(3) | Linux Programmer's Manual | AIO_READ(3) |
名前¶
aio_read - 非同期で読み込む書式¶
#include <aio.h>説明¶
aio_read() 関数は、aiocbp が指すバッファに記載された I/O リクエストを キューに入れる。この関数は read(2) の非同期版である。 呼び出しread(fd, buf, count)
返り値¶
成功した場合、0 が返される。 エラーの場合、リクエストはキューに入れられず、 -1 が返されて、 errno が適切に設定される。 エラーは後でのみ検知された場合は、 エラーは aio_return(3) と aio_error(3) 経由で報告されることになる ( aio_return(3) は状態 -1 を返し、 aio_error(3) でエラー状態— errno で取得できる EBADF のようなエラー状態が返される)。エラー¶
- EAGAIN
- リソースが足りない。
- EBADF
- aio_fildes は読み込みのためにオープンされた有効なファイルディスクリプタでない。
- EINVAL
- aio_offset, aio_reqprio, aio_nbytes のうち 1 つ以上が無効である。
- ENOSYS
- aio_read() は実装されていない。
- EOVERFLOW
- ファイルが通常のファイルであり、 ファイルの終端の前から読み込みを開始して、 少なくとも 1 バイトを読み込もうとした。 しかし開始位置がこのファイルの最大オフセットを超えていた。
バージョン¶
The aio_read() 関数は glibc 2.1 以降で利用できる。準拠¶
POSIX.1-2001, POSIX.1-2008.注意¶
使用する前に制御ブロックを 0 にしておくのは、よい考えである。 この制御ブロックは、読み込み操作が進行している間は変更すべきでない。 読み込まれるバッファ領域は 操作の最中にアクセスすべきではない。 さもないと起こる結果が不定になる。 これに含まれるメモリ領域は、有効なままにしなければならない。例¶
aio(7) を参照。関連項目¶
aio_cancel(3), aio_error(3), aio_fsync(3), aio_return(3), aio_suspend(3), aio_write(3), lio_listio(3), aio(7)この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 3.41 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。2012-05-08 |