Scroll to navigation

INOTIFY_INIT(2) Linux Programmer's Manual INOTIFY_INIT(2)

名前

inotify_init, inotify_init1 - inotify インスタンスを初期化する

書式

#include <sys/inotify.h>

int inotify_init(void);
int inotify_init1(int flags);

説明

inotify API の概要については inotify(7) を参照。

inotify_init() は、新規の inotify インスタンスを初期化し、作成された inotify イベントキュー に対応するファイルディスクリプターを返す。

inotify_init1() は、 flags が 0 の場合、 inotify_init() と同じである。 flags に以下の値をビット毎の論理和 (OR) で指定することで、 異なる動作をさせることができる。

IN_NONBLOCK
新しく生成されるオープンファイル記述 (open file description) の BR O_NONBLOCK ファイルステータスフラグをセットする。 このフラグを使うことで、 O_NONBLOCK をセットするために fcntl(2) を追加で呼び出す必要がなくなる。
IN_CLOEXEC
新しいファイルディスクリプターに対して close-on-exec (FD_CLOEXEC) フラグをセットする。 このフラグが役に立つ理由については、 open(2)O_CLOEXEC フラグの説明を参照のこと。

返り値

成功すると、これらのシステムコールは新しいファイルディスクリプターを返す。 エラーの場合、-1 を返し、 errno をエラーを示す値に設定する。

エラー

EINVAL
(inotify_init1()) 無効な値が flags に指定された。
EMFILE
inotify インスタンスの総数がユーザー単位の上限に達していた。
ENFILE
inotify ファイルディスクリプターの総数がシステムの上限に達していた。
ENOMEM
カーネルメモリーが十分になかった。

バージョン

inotify_init() は Linux 2.6.13 で初めて登場し、 ライブラリによるサポートは glibc バージョン 2.4 で追加された。 inotify_init1() は Linux 2.6.27 で追加され、 ライブラリによるサポートは glibc バージョン 2.9 で追加された。

準拠

これらのシステムコールは Linux 独自である。

関連項目

inotify_add_watch(2), inotify_rm_watch(2), inotify(7)

この文書について

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