OSDN Git Service

(split) DP: release pages (catch up to 3.50).
[linuxjm/LDP_man-pages.git] / release / man2 / io_getevents.2
1 .\" Copyright (C) 2003 Free Software Foundation, Inc.
2 .\"
3 .\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
4 .\" This file is distributed according to the GNU General Public License.
5 .\" %%%LICENSE_END
6 .\"
7 .\"*******************************************************************
8 .\"
9 .\" This file was generated with po4a. Translate the source file.
10 .\"
11 .\"*******************************************************************
12 .TH IO_GETEVENTS 2 2012\-11\-11 Linux "Linux Programmer's Manual"
13 .SH 名前
14 io_getevents \- 完了キューから非同期 I/O イベントを読み出す
15 .SH 書式
16 .nf
17 \fB#include <linux/aio_abi.h>\fP         /* 必要な型の定義 */
18 \fB#include <linux/time.h>\fP            /* 'struct timespec' の定義 */
19
20 \fBint io_getevents(aio_context_t \fP\fIctx_id\fP\fB, long \fP\fImin_nr\fP\fB, long \fP\fInr\fP\fB,\fP
21 \fB                 struct io_event *\fP\fIevents\fP\fB, struct timespec *\fP\fItimeout\fP\fB);\fP
22 .fi
23
24 \fI注\fP: このシステムコールには glibc ラッパー関数がない。「注意」の節を参照すること。
25 .SH 説明
26 .PP
27 \fBio_getevents\fP() システムコールは、少なくとも \fImin_nr\fP の、最大
28 \fInr\fP 個のイベントを、 \fIctx_id\fP 引き数で指定された AIO (非同期 I/O)
29 コンテキストの 完了キューから読み出そうとする。 \fItimeout\fP はイベント
30 読み出しの待ち時間の合計を指定する。 タイムアウトに NULL を指定した場合、
31 少なくとも \fImin_nr\fP 個のイベントが 読み出されるまで待つことを意味する。
32 注意点を以下にあげる: \fItimeout\fP は相対的な指定である。 NULL でない場合
33 更新されることもありえる。 呼び出し元の動作は停止する。
34 .SH 返り値
35 成功すると、 \fBio_getevents\fP()  は読み出したイベント数を返す。 イベントが一つも読み出されなかった場合は 0 が返され、
36 \fItimeout\fP 時間が経過した場合は \fImin_nr\fP 未満の値が返される。 失敗時の返り値については、「注意」の節を参照すること。
37 .SH エラー
38 .TP 
39 \fBEFAULT\fP
40 \fIevents\fP または \fItimeout\fP が無効なポインタである。
41 .TP 
42 \fBEINVAL\fP
43 \fIctx_id\fP が無効である。もしくは、\fImin_nr\fP または \fInr\fP が 範囲外の値である。
44 .TP 
45 \fBEINTR\fP
46 シグナルハンドラにより割り込まれた。 \fBsignal\fP(7)  参照。
47 .TP 
48 \fBENOSYS\fP
49 \fBio_getevents\fP()  がこのアーキテクチャでは実装されていない。
50 .SH バージョン
51 .PP
52 非同期 I/O システム・コールは Linux 2.5 で初めて登場した。
53 .SH 準拠
54 .PP
55 \fBio_getevents\fP()  は Linux 固有であり、移植を想定したプログラムで 使用すべきではない。
56 .SH 注意
57 .\" http://git.fedorahosted.org/git/?p=libaio.git
58 glibc はこのシステムコールのラッパー関数を提供していない。
59 \fBsyscall\fP(2) を使ってこのシステムコールを起動することができる。
60 しかし、たいていは、このシステムコールを呼び出したいのではなく、
61  \fIlibaio\fP が提供している \fBio_getevents\fP ラッパー関数を呼び出したい
62 場合がほとんどであろう。
63
64 .\" But glibc is confused, since <libaio.h> uses 'io_context_t' to declare
65 .\" the system call.
66 \fIlibaio\fP のラッパー関数では \fIctx_id\fP 引き数に別の型
67 (\fIio_context_t\fP) が使われることに注意すること。
68 また、\fIlibaio\fP のラッパー関数は、エラーの通知が通常の C ライブラリの
69 慣習にしたがっておらず、エラーの場合には負のエラー番号 (エラーの節に列
70 挙されている値の一つを負にしたもの) が返り値となる点にも注意すること。
71 \fBsyscall\fP(2) 経由でシステムコールを起動すると、返り値は通常のエラー通
72 知の慣習に したがってものとなり、エラーの場合には \-1 が返り、 \fIerrno\fP
73 にエラーを示す (正の) 値が設定される。
74 .SH バグ
75 無効な \fIctx_id\fP を指定した場合、エラー \fBEINVAL\fP が生成されず、セグメンテーション違反 (segmentation fault)
76 が発生する場合がある。
77 .SH 関連項目
78 .PP
79 .\" .SH AUTHOR
80 .\" Kent Yoder.
81 \fBio_cancel\fP(2), \fBio_destroy\fP(2), \fBio_setup\fP(2), \fBio_submit\fP(2),
82 \fBaio\fP(7), \fBtime\fP(7)
83 .SH この文書について
84 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部
85 である。プロジェクトの説明とバグ報告に関する情報は
86 http://www.kernel.org/doc/man\-pages/ に書かれている。