OSDN Git Service

44df0308765d9ceb45aea1e093876113339300ad
[linuxjm/LDP_man-pages.git] / release / man3 / aio_suspend.3
1 .\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl)
2 .\"
3 .\" This is free documentation; you can redistribute it and/or
4 .\" modify it under the terms of the GNU General Public License as
5 .\" published by the Free Software Foundation; either version 2 of
6 .\" the License, or (at your option) any later version.
7 .\"
8 .\" The GNU General Public License's references to "object code"
9 .\" and "executables" are to be interpreted as the output of any
10 .\" document formatting or typesetting system, including
11 .\" intermediate and printed output.
12 .\"
13 .\" This manual is distributed in the hope that it will be useful,
14 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
15 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 .\" GNU General Public License for more details.
17 .\"
18 .\" You should have received a copy of the GNU General Public
19 .\" License along with this manual; if not, write to the Free
20 .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
21 .\" USA.
22 .\"
23 .\" Japanese Version Copyright (c) 2004 Yuichi SATO
24 .\"         all rights reserved.
25 .\" Translated Sat Jul 10 03:18:23 JST 2004
26 .\"         by Yuichi SATO <ysato444@yahoo.co.jp>
27 .\"
28 .TH AIO_SUSPEND 3 2003-11-14  "" "Linux Programmer's Manual"
29 .SH 名前
30 aio_suspend \- 非同期 I/O 操作またはタイムアウトを待つ
31 .SH 書式
32 .nf
33 .sp
34 .B "#include <aio.h>"
35 .sp
36 .BI "int aio_suspend(const struct aiocb * const " cblist [],
37 .br
38 .BI "                int " n ", const struct timespec *" timeout );
39 .sp
40 \fI\-lrt\fP でリンクする。
41 .fi
42 .SH 説明
43 .BR aio_suspend ()
44 関数は、長さ
45 .I n
46 のリスト
47 .I cblist
48 に含まれる非同期 I/O リクエストのうち少なくとも 1 つが完了するか、
49 シグナルが配送されるか、
50 .I timeout
51 が NULL でなく、かつその時間が過ぎるまで、
52 呼び出したプロセスを停止 (suspend) する。
53 .LP
54 リストの各アイテムは、NULL (これは無視される) か、
55 .BR aio_read (3),
56 .BR aio_write (3),
57 .BR lio_listio (3)
58 を使って I/O が開始された制御ブロックへのポインタでなければならない。
59 .LP
60 .B CLOCK_MONOTONIC
61 がサポートされる場合、
62 このクロックを使ってタイムアウトの間隔が計測される。
63 .SH 返り値
64 指示されたリクエストの 1 つが完了した後にこの関数が返る場合は、0 を返す。
65 それ以外の場合は \-1 を返して、
66 .I errno
67 を適切に設定する。
68 .SH エラー
69 .TP
70 .B EAGAIN
71 指示された操作のどれも完了しないうちに、
72 この呼び出しがタイムアウトによって終了させられた。
73 .TP
74 .B EINTR
75 この呼び出しがシグナルによって終了させられた。
76 .BR signal (7)
77 参照。
78 (このシグナルは、完了を待っていた操作のいずれかの完了シグナルの可能性もある。)
79 .SH 準拠
80 POSIX.1-2001.
81 .SH 注意
82 時間間隔が 0 であることを指定する NULL ではない
83 .I timeout
84 を使って、ポーリングを行うこともできる。
85 .SH 関連項目
86 .BR aio_cancel (3),
87 .BR aio_error (3),
88 .BR aio_fsync (3),
89 .BR aio_read (3),
90 .BR aio_return (3),
91 .BR aio_write (3),
92 .BR time (7)