.\" Copyright (C) 2003 Free Software Foundation, Inc. .\" .\" %%%LICENSE_START(GPL_NOVERSION_ONELINE) .\" This file is distributed according to the GNU General Public License. .\" %%%LICENSE_END .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 2003 Akihiro MOTOKI, all rights reserved. .\" Translated Mon Mar 8 2003 by Akihiro MOTOKI .\" Updated 2012-05-29, Akihiro MOTOKI .\" Updated 2013-03-25, Akihiro MOTOKI .\" Updated 2013-05-01, Akihiro MOTOKI .\" .TH IO_GETEVENTS 2 2013\-04\-08 Linux "Linux Programmer's Manual" .SH 名前 io_getevents \- 完了キューから非同期 I/O イベントを読み出す .SH 書式 .nf \fB#include \fP /* 必要な型の定義 */ \fB#include \fP /* 'struct timespec' の定義 */ \fBint io_getevents(aio_context_t \fP\fIctx_id\fP\fB, long \fP\fImin_nr\fP\fB, long \fP\fInr\fP\fB,\fP \fB struct io_event *\fP\fIevents\fP\fB, struct timespec *\fP\fItimeout\fP\fB);\fP .fi \fI注\fP: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節を参照。 .SH 説明 .PP \fBio_getevents\fP() システムコールは、少なくとも \fImin_nr\fP の、最大 \fInr\fP 個のイベントを、 \fIctx_id\fP 引き数で指定された AIO (非同期 I/O) コンテキストの 完了キューから読み出そうとする。 \fItimeout\fP はイベント 読み出しの待ち時間の合計を指定する。 タイムアウトに NULL を指定した場合、 少なくとも \fImin_nr\fP 個のイベントが 読み出されるまで待つことを意味する。 注意点を以下にあげる: \fItimeout\fP は相対的な指定である。 .SH 返り値 成功すると、 \fBio_getevents\fP() は読み出したイベント数を返す。 イベントが一つも読み出されなかった場合は 0 が返され、 \fItimeout\fP 時間が経過した場合は \fImin_nr\fP 未満の値が返される。 失敗時の返り値については、「注意」の節を参照すること。 .SH エラー .TP \fBEFAULT\fP \fIevents\fP または \fItimeout\fP が無効なポインタである。 .TP \fBEINVAL\fP \fIctx_id\fP が無効である。もしくは、\fImin_nr\fP または \fInr\fP が 範囲外の値である。 .TP \fBEINTR\fP シグナルハンドラにより割り込まれた。 \fBsignal\fP(7) 参照。 .TP \fBENOSYS\fP \fBio_getevents\fP() がこのアーキテクチャでは実装されていない。 .SH バージョン .PP 非同期 I/O システム・コールは Linux 2.5 で初めて登場した。 .SH 準拠 .PP \fBio_getevents\fP() は Linux 固有であり、移植を想定したプログラムで 使用すべきではない。 .SH 注意 .\" http://git.fedorahosted.org/git/?p=libaio.git glibc はこのシステムコールのラッパー関数を提供していない。 \fBsyscall\fP(2) を使ってこのシステムコールを起動することができる。 しかし、たいていは、このシステムコールを呼び出したいのではなく、 \fIlibaio\fP が提供している \fBio_getevents\fP ラッパー関数を呼び出したい 場合がほとんどであろう。 .\" But glibc is confused, since uses 'io_context_t' to declare .\" the system call. \fIlibaio\fP のラッパー関数では \fIctx_id\fP 引き数に別の型 (\fIio_context_t\fP) が使われることに注意すること。 また、\fIlibaio\fP のラッパー関数は、エラーの通知が通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 (エラーの節に列 挙されている値の一つを負にしたもの) が返り値となる点にも注意すること。 \fBsyscall\fP(2) 経由でシステムコールを起動すると、返り値は通常のエラー通 知の慣習に したがってものとなり、エラーの場合には \-1 が返り、 \fIerrno\fP にエラーを示す (正の) 値が設定される。 .SH バグ 無効な \fIctx_id\fP を指定した場合、エラー \fBEINVAL\fP が生成されず、セグメンテーション違反 (segmentation fault) が発生する場合がある。 .SH 関連項目 .PP .\" .SH AUTHOR .\" Kent Yoder. \fBio_cancel\fP(2), \fBio_destroy\fP(2), \fBio_setup\fP(2), \fBio_submit\fP(2), \fBaio\fP(7), \fBtime\fP(7) .SH この文書について この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.65 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man\-pages/ に書かれている。