1 .\" Copyright (C) 2003 Free Software Foundation, Inc.
2 .\" This file is distributed according to the GNU General Public License.
3 .\" See the file COPYING in the top level source directory for details.
5 .\" .de Sh \" Subsection
13 .\" .de Sp \" Vertical space (when we can't use .PP)
17 .\" .de Ip \" List item
19 .\" .ie \n(.$>=3 .ne \$3
23 .\"*******************************************************************
25 .\" This file was generated with po4a. Translate the source file.
27 .\"*******************************************************************
28 .TH IO_GETEVENTS 2 2008\-07\-04 Linux "Linux Programmer's Manual"
30 io_getevents \- 完了キューから非同期 I/O イベントを読み出す
35 .\" #include <linux/aio.h>
36 \fB#include <linux/time.h>\fP
37 \fB#include <libaio.h>\fP
42 \fBint io_getevents(aio_context_t \fP\fIctx_id\fP\fB, long \fP\fImin_nr\fP\fB, long \fP\fInr\fP\fB,\fP
43 \fB struct io_event *\fP\fIevents\fP\fB, struct timespec *\fP\fItimeout\fP\fB);\fP
49 \fBio_getevents\fP() は、少なくとも \fImin_nr\fP の、最大 \fInr\fP 個の イベントを、 \fIctx_id\fP で指定された
50 AIO (非同期 I/O) コンテキストの 完了キューから読み出そうとする。 \fItimeout\fP はイベント読み出しの待ち時間の合計を指定する。
51 タイムアウトに NULL を指定した場合、少なくとも \fImin_nr\fP 個のイベントが 読み出されるまで待つことを意味する。 注意点を以下にあげる:
52 \fItimeout\fP は相対的な指定である。 NULL でない場合更新されることもありえる。 呼び出し元の動作は停止する。
54 成功すると、 \fBio_getevents\fP() は読み出したイベント数を返す。 イベントが一つも読み出されなかった場合は 0 が返され、
55 \fItimeout\fP 時間が経過した場合は \fImin_nr\fP 未満の値が返される。 失敗時の返り値については、「注意」の節を参照すること。
59 \fIevents\fP または \fItimeout\fP が無効なポインタである。
62 \fIctx_id\fP が無効である。もしくは、\fImin_nr\fP または \fInr\fP が 範囲外の値である。
65 シグナルハンドラにより割り込まれた。 \fBsignal\fP(7) 参照。
68 \fBio_getevents\fP() がこのアーキテクチャでは実装されていない。
71 非同期 I/O システム・コールは 2002年8月に Linux 2.5 で初めて登場した。
74 \fBio_getevents\fP() は Linux 固有であり、移植を想定したプログラムで 使用すべきではない。
76 glibc はこのシステムコール用のラッパー関数を提供していない。
78 \fIlibaio\fP で \fBio_getevents\fP() 用に提供されているラッパー関数は、エラーの通知が通常の C ライブラリの
79 慣習にしたがっておらず、エラーの場合には負のエラー番号 (エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。
80 \fBsyscall\fP(2) 経由でシステムコールを起動すると、返り値は通常のエラー通知の慣習に したがってものとなり、エラーの場合には \-1 が返り、
81 \fIerrno\fP にエラーを示す (正の) 値が設定される。
84 \fBio_cancel\fP(2), \fBio_destroy\fP(2), \fBio_setup\fP(2), \fBio_submit\fP(2),
85 \fBaio\fP(7), \fBtime\fP(7)
89 .\" The asynchronous I/O system calls were written by Benjamin LaHaise.