JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... は以下の通りである。 #include < aiocb.h > struct aiocb { /* The order of these fields is implementation-dependent */ int aio_fildes; /* File descriptor */ off_t aio_offset; /* File offset */ volatile void *aio_buf; /* Location of buffer */ size_t aio_nby ... ation codes for 'aio_lio_opcode': */ enum { LIO_READ, LIO_WRITE, LIO_NOP }; この構造体のフィールドは以下の通りである。 aio_fildes I/O 操作の実行対象となるファイルディスクリプター。 aio_offset I/O 操作を行うファイルオフセットを示す。 aio_buf 読み出し操作 ... s struct ioRequest *ioReq = si->si_value.sival_ptr; and the file descriptor would then be available via ioReq->aiocbp->aio_fildes */ } } int main(int argc, char *argv[]) { struct sigaction sa; int s; int numReqs; /* Total number of queued I/O requests ... ... ) 関数は、 aiocbp->aio_fildes で関連付けられているまだ 完了していない全ての非同期 I/O 操作を同期させる。 ( aiocb 構造体の説明は aio (7) を参照) より正確 ... けである点に注意すること。 I/O の完了の待ち合わせは行わない。 aiocbp で指される構造体のフィールドのうち、この呼び出しで aio_fildes 以外に使用されるのは aio_sigevent フィールド ( sigevent 構造体、説明は sigevent (7) 参照) のみである。このフィールドは、完 ... この関数は 0 を返す。 エラーの場合、-1 が返され、 errno が適切に設定される。 エラー EAGAIN リソースが足りない。 EBADF aio_fildes が書き込みのためにオープンされた有効なファイルディスクリプターではない。 EINVAL このファイルでは同期 I/O がサポートされてい ... ... を キューに入れる。この関数は read (2) の非同期版である。 呼び出し read(fd, buf, count) の各引数は aiocb が指す構造体の aio_fildes , aio_buf , aio_nbytes に (この順序で) 対応する ( aiocb 構造体の説明は aio (7) を参照)。 データの読み込みは、ファイルオフセ ... (3) でエラー状態--- errno で取得できる EBADF のようなエラー状態が返される)。 エラー EAGAIN リソースが足りない。 EBADF aio_fildes は読み込みのためにオープンされた有効なファイルディスクリプターでない。 EINVAL aio_offset , aio_reqprio , aio_nbytes のうち ... ... をキューに入れる。この関数は write (2) の非同期版である。 呼び出し write(fd, buf, count) の各引数は aiocb が指す構造体の aio_fildes , aio_buf , aio_nbytes に (この順序で) 対応する ( aiocb 構造体の説明は aio (7) を参照)。 O_APPEND が設定されない場合、ファ ... (3) でエラー状態--- errno で取得できる EBADF のようなエラー状態が返される)。 エラー EAGAIN リソースが足りない。 EBADF aio_fildes が書き込みのためにオープンされた有効なファイルディスクリプターではない。 EFBIG ファイルは通常のファイルであり、少なくとも ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。