X-Git-Url: http://git.osdn.net/view?p=linuxjm%2FLDP_man-pages.git;a=blobdiff_plain;f=release%2Fman3%2Faio_suspend.3;h=90f6f9b6c0bcada9c783fdecc13fe0a3bef2be10;hp=44df0308765d9ceb45aea1e093876113339300ad;hb=4fa3e54b837e5814a4598ec901d77446bf5cb9b3;hpb=f8a251df75590049b7aa6f3cd698b6ce733b1ea5 diff --git a/release/man3/aio_suspend.3 b/release/man3/aio_suspend.3 index 44df0308..90f6f9b6 100644 --- a/release/man3/aio_suspend.3 +++ b/release/man3/aio_suspend.3 @@ -1,4 +1,5 @@ .\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl) +.\" and Copyright (C) 2010 Michael kerrisk .\" .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as @@ -20,73 +21,70 @@ .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, .\" USA. .\" -.\" Japanese Version Copyright (c) 2004 Yuichi SATO -.\" all rights reserved. -.\" Translated Sat Jul 10 03:18:23 JST 2004 -.\" by Yuichi SATO +.\"******************************************************************* .\" -.TH AIO_SUSPEND 3 2003-11-14 "" "Linux Programmer's Manual" +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH AIO_SUSPEND 3 2010\-10\-02 "" "Linux Programmer's Manual" .SH 名前 aio_suspend \- 非同期 I/O 操作またはタイムアウトを待つ .SH 書式 .nf .sp -.B "#include " +\fB#include \fP .sp -.BI "int aio_suspend(const struct aiocb * const " cblist [], +\fBint aio_suspend(const struct aiocb * const \fP\fIaiocb_list\fP\fB[],\fP .br -.BI " int " n ", const struct timespec *" timeout ); +\fB int \fP\fInitems\fP\fB, const struct timespec *\fP\fItimeout\fP\fB);\fP .sp \fI\-lrt\fP でリンクする。 .fi .SH 説明 -.BR aio_suspend () -関数は、長さ -.I n -のリスト -.I cblist -に含まれる非同期 I/O リクエストのうち少なくとも 1 つが完了するか、 -シグナルが配送されるか、 -.I timeout -が NULL でなく、かつその時間が過ぎるまで、 -呼び出したプロセスを停止 (suspend) する。 +\fBaio_suspend\fP() 関数は、以下のいずれかが発生するまで +呼び出したスレッドの実行を停止 (suspend) する。 +.IP * 3 +\fIaiocb_list\fP リスト内の非同期 I/O リクエストのうち、少なくとも一つが完了した。 +.IP * +シグナルが配送された。 +.IP * +\fItimeout\fP が NULL でない場合に、指定した時間が経過した +(\fItimespec\fP 構造体の詳細は \fBnanosleep\fP(2) を参照)。 .LP -リストの各アイテムは、NULL (これは無視される) か、 -.BR aio_read (3), -.BR aio_write (3), -.BR lio_listio (3) -を使って I/O が開始された制御ブロックへのポインタでなければならない。 +\fInitems\fP 引き数は \fIaiocb_list\fP の要素数を指定する。 +\fIaiocb_list\fP が指すリストの各要素は、NULL (これは無視される) か、 +\fBaio_read\fP(3), \fBaio_write\fP(3), \fBlio_listio\fP(3) を使って I/O が開始された +制御ブロックへのポインタでなければならない。 +(\fIaiocb\fP 構造体の説明は \fBaio\fP(7) を参照) .LP -.B CLOCK_MONOTONIC -がサポートされる場合、 -このクロックを使ってタイムアウトの間隔が計測される。 +\fBCLOCK_MONOTONIC\fP がサポートされる場合、 このクロックを使ってタイムアウトの +間隔が計測される (\fBclock_gettime\fP(3) を参照)。 .SH 返り値 -指示されたリクエストの 1 つが完了した後にこの関数が返る場合は、0 を返す。 -それ以外の場合は \-1 を返して、 -.I errno -を適切に設定する。 +\fIaiocb_list\fP で指定された I/O リクエストの 1 つが完了した後に +この関数が返った場合は、0 が返される。 +それ以外の場合は、 \-1 が返り、 \fIerrno\fP にエラーを示す値に設定される。 .SH エラー -.TP -.B EAGAIN -指示された操作のどれも完了しないうちに、 -この呼び出しがタイムアウトによって終了させられた。 -.TP -.B EINTR -この呼び出しがシグナルによって終了させられた。 -.BR signal (7) -参照。 -(このシグナルは、完了を待っていた操作のいずれかの完了シグナルの可能性もある。) +.TP +\fBEAGAIN\fP +指示された操作のどれも完了しないうちに、呼び出しがタイムアウトした。 +.TP +\fBEINTR\fP +この呼び出しがシグナルによって終了させられた (このシグナルは、完了を待っていた +操作のいずれかの完了シグナルの可能性もある)。\fBsignal\fP(7) 参照。 +.SH バージョン +The \fBaio_suspend\fP() 関数は glibc 2.1 以降で利用できる。 .SH 準拠 -POSIX.1-2001. +POSIX.1\-2001, POSIX.1\-2008. .SH 注意 -時間間隔が 0 であることを指定する NULL ではない -.I timeout -を使って、ポーリングを行うこともできる。 +時間間隔が 0 であることを指定する NULL ではない \fItimeout\fP を使って、ポーリングを行うこともできる。 + +\fIaiocb_list\fP リストで指定した非同期 I/O 操作のうち、 +\fBaio_suspend\fP() を呼び出した時点ですでに完了したものがある場合、 +\fBaio_suspend\fP() はすぐに返る。 + +\fBaio_suspend\fP() が成功で返った後でどの I/O 操作が完了したかを特定するには、 +\fBaio_error\fP(3) を使って \fIaiocb_list\fP が指す \fIaiocb\fP 構造体のリストを +スキャンする。 .SH 関連項目 -.BR aio_cancel (3), -.BR aio_error (3), -.BR aio_fsync (3), -.BR aio_read (3), -.BR aio_return (3), -.BR aio_write (3), -.BR time (7) +\fBaio_cancel\fP(3), \fBaio_error\fP(3), \fBaio_fsync\fP(3), \fBaio_read\fP(3), +\fBaio_return\fP(3), \fBaio_write\fP(3), \fBlio_listio\fP(3), \fBaio\fP(7), \fBtime\fP(7)