OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / LDP_man-pages / release / man2 / io_getevents.2
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.
4 .\"
5 .\" Japanese Version Copyright (c) 2003 Akihiro MOTOKI, all rights reserved.
6 .\" Translated Mon Mar  8 2003 by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
7 .\"
8 .\"WORD:        completion queue        完了キュー
9 .\"
10 .\" .de Sh \" Subsection
11 .\" .br
12 .\" .if t .Sp
13 .\" .ne 5
14 .\" .PP
15 .\" \fB\\$1\fP
16 .\" .PP
17 .\" ..
18 .\" .de Sp \" Vertical space (when we can't use .PP)
19 .\" .if t .sp .5v
20 .\" .if n .sp
21 .\" ..
22 .\" .de Ip \" List item
23 .\" .br
24 .\" .ie \\n(.$>=3 .ne \\$3
25 .\" .el .ne 3
26 .\" .IP "\\$1" \\$2
27 .\" ..
28 .TH IO_GETEVENTS 2 2008-07-04 "Linux" "Linux Programmer's Manual"
29 .SH 名前
30 io_getevents \- 完了キューから非同期 I/O イベントを読み出す
31 .SH 書式
32 .nf
33 .\" .ad l
34 .\" .hy 0
35 .B #include <linux/time.h>
36 .B #include <libaio.h>
37 .\" #include <linux/aio.h>
38 .sp
39 .\" .HP 19
40 .BI "int io_getevents(aio_context_t " ctx_id ", long " min_nr ", long " nr ,
41 .BI "                 struct io_event *" events \
42 ", struct timespec *" timeout );
43 .\" .ad
44 .\" .hy
45 .sp
46 \fI\-laio\fP とリンクする。
47 .fi
48 .SH 説明
49 .PP
50 .BR io_getevents ()
51 は、少なくとも \fImin_nr\fP の、最大 \fInr\fP 個の
52 イベントを、 \fIctx_id\fP で指定された AIO (非同期 I/O) コンテキストの
53 完了キューから読み出そうとする。
54 \fItimeout\fP はイベント読み出しの待ち時間の合計を指定する。
55 タイムアウトに NULL を指定した場合、少なくとも \fImin_nr\fP 個のイベントが
56 読み出されるまで待つことを意味する。
57 注意点を以下にあげる:
58 \fItimeout\fP は相対的な指定である。
59 NULL でない場合更新されることもありえる。
60 呼び出し元の動作は停止する。
61 .SH 返り値
62 成功すると、
63 .BR io_getevents ()
64 は読み出したイベント数を返す。
65 イベントが一つも読み出されなかった場合は 0 が返され、
66 \fItimeout\fP 時間が経過した場合は \fImin_nr\fP 未満の値が返される。
67 失敗時の返り値については、「注意」の節を参照すること。
68 .SH エラー
69 .TP
70 .B EFAULT
71 \fIevents\fP または \fItimeout\fP が無効なポインタである。
72 .TP
73 .B EINVAL
74 \fIctx_id\fP が無効である。もしくは、\fImin_nr\fP または \fInr\fP が
75 範囲外の値である。
76 .TP
77 .B EINTR
78 シグナルハンドラにより割り込まれた。
79 .BR signal (7)
80 参照。
81 .TP
82 .B ENOSYS
83 .BR io_getevents ()
84 がこのアーキテクチャでは実装されていない。
85 .SH バージョン
86 .PP
87 非同期 I/O システム・コールは 2002年8月に Linux 2.5 で初めて登場した。
88 .SH 準拠
89 .PP
90 .BR io_getevents ()
91 は Linux 固有であり、移植を想定したプログラムで
92 使用すべきではない。
93 .SH 注意
94 glibc はこのシステムコール用のラッパー関数を提供していない。
95
96 .I libaio
97
98 .BR io_getevents ()
99 用に提供されているラッパー関数は、エラーの通知が通常の C ライブラリの
100 慣習にしたがっておらず、エラーの場合には負のエラー番号
101 (エラーの節に列挙されている値の一つを負にしたもの) が返り値となる。
102 .BR syscall (2)
103 経由でシステムコールを起動すると、返り値は通常のエラー通知の慣習に
104 したがってものとなり、エラーの場合には \-1 が返り、
105 .I errno
106 にエラーを示す (正の) 値が設定される。
107 .SH 関連項目
108 .PP
109 .BR io_cancel (2),
110 .BR io_destroy (2),
111 .BR io_setup (2),
112 .BR io_submit (2),
113 .BR aio (7),
114 .BR time (7)
115 .\" .SH 注
116 .\" .PP
117 .\" 非同期 I/O システム・コールは Benjamin LaHaise が書いた。
118 .\" .SH 著者
119 .\" Kent Yoder.