Manpages

名 前

aio_fsync − 非 同 期 フ ァ イ ル を 同 期 さ せ る

書 式

#include <aio.h>

int aio_fsync(int op, struct aiocb *aiocbp);

−lrt で リ ン ク す る 。

説 明

aio_fsync() 関 数 は 、 aiocbp−>aio_fildes で 関 連 付 け ら れ て い る ま だ 完 了 し て い な い 全 て の 非 同 期 I/O 操 作 を 同 期 さ せ る 。 (aiocb 構 造 体 の 説 明 は aio(7) を 参 照 ) よ り 正 確 に 言 う と 、 opO_SYNC の 場 合 、 現 在 キ ュ ー に 入 れ ら れ て い る 全 て の I/O 操 作 は 、 fsync(2) が 呼 ば れ た か の よ う に 完 了 さ れ る だ ろ う 。 ま た opO_DSYNC の 場 合 、 こ の 呼 び 出 し は fdatasync(2) の 非 同 期 版 と な る 。 こ の 関 数 は リ ク エ ス ト を 行 う だ け で あ る 点 に 注 意 す る こ と 。 I/O の 完 了 の 待 ち 合 わ せ は 行 わ な い 。

aiocbp で 指 さ れ る 構 造 体 の フ ィ ー ル ド の う ち 、 こ の 呼 び 出 し で aio_fildes 以 外 に 使 用 さ れ る の は aio_sigevent フ ィ ー ル ド (sigevent 構 造 体 、 説 明 は sigevent(7) 参 照 ) の み で あ る 。 こ の フ ィ ー ル ド は 、 完 了 時 の 非 同 期 通 知 に 使 用 し た い タ イ プ を 示 す 。 そ の 他 の フ ィ ー ル ド は 無 視 さ れ る 。

返 り 値

成 功 し た 場 合 (同 期 リ ク エ ス ト を キ ュ ー に 入 れ る の に 成 功 し た 場 合 )、 こ の 関 数 は 0 を 返 す 。 エ ラ ー の 場 合 、 −1 が 返 さ れ 、 errno が 適 切 に 設 定 さ れ る 。

エ ラ ー

EAGAIN リ ソ ー ス が 足 り な い 。

EBADF

aio_fildes が 書 き 込 み の た め に オ ー プ ン さ れ た 有 効 な フ ァ イ ル デ ィ ス ク リ プ タ ー で は な い 。

EINVAL こ の フ ァ イ ル で は 同 期

I/O が サ ポ ー ト さ れ て い な い 。 ま た は op

O_SYNC で も O_DSYNC で も な い 。

ENOSYS

aio_fsync() は 実 装 さ れ て い な い 。

バ ー ジ ョ ン

The aio_fsync() 関 数 は glibc 2.1 以 降 で 利 用 で き る 。

準 拠

POSIX.1−2001, POSIX.1−2008.

関 連 項 目

aio_cancel(3), aio_error(3), aio_read(3), aio_return(3), aio_suspend(3), aio_write(3), lio_listio(3), aio(7), sigevent(7)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。