#include <linux/aio_abi.h> /* 必要な型の定義 */ #include <linux/time.h> /* 'struct timespec' の定義 */ int io_getevents(aio_context_t ctx_id, long min_nr, long nr, struct io_event *events, struct timespec *timeout);
注: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節を参照。
The io_getevents() system call attempts to read at least min_nr events and up to nr events from the completion queue of the AIO context specified by ctx_id.
The timeout argument specifies the amount of time to wait for events, and is specified as a relative timeout in a structure of the following form:
struct timespec {
time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds [0 .. 999999999] */ };
The specified time will be rounded up to the system clock granularity and is guaranteed not to expire early.
Specifying timeout as NULL means block indefinitely until at least min_nr events have been obtained.
libaio のラッパー関数では ctx_id 引数に別の型 (io_context_t) が使われることに注意すること。 また、libaio のラッパー関数は、エラーの通知が通常の C ライブラリの 慣習にしたがっておらず、エラーの場合には負のエラー番号 (エラーの節に列 挙されている値の一つを負にしたもの) が返り値となる点にも注意すること。 syscall(2) 経由でシステムコールを起動すると、返り値は通常のエラー通 知の慣習に したがってものとなり、エラーの場合には -1 が返り、 errno にエラーを示す (正の) 値が設定される。
[man1]
[man2]
[man3]
[man4]
[man5]
[man6]
[man7]
[man8]
[a]
[b]
[c]
[d]
[e]
[f]
[g]
[h]
[i]
[j]
[k]
[l]
[m]
[n]
[o]
[p]
[q]
[r]
[s]
[t]
[u]
[v]
[w]
[x]
[y]
[z]