Provided by: manpages-ru-dev_4.19.0-7_all
ИМЯ
inotify_init, inotify_init1 - инициализирует экземпляр inotify
LIBRARY
Standard C library (libc, -lc)
СИНТАКСИС
#include <sys/inotify.h> int inotify_init(void); int inotify_init1(int flags);
ОПИСАНИЕ
Обзор программного интерфейса inotify смотрите в inotify(7). inotify_init() инициализирует новый экземпляр inotify и возвращает файловый дескриптор, связанный с очередью событий нового inotify. Если flags равен 0, то inotify_init1() выполняет тоже, что и inotify_init(). Чтобы получить другое поведение, следующие значения могут быть сложены с помощью побитового ИЛИ в flags: IN_NONBLOCK Устанавливает флаг состояния файла O_NONBLOCK для нового открытого файлового описания (смотрите open(2)), на которое ссылается новый файловый дескриптор. Использование данного флага делает ненужными дополнительные вызовы fcntl(2) для достижения того же результата. IN_CLOEXEC Устанавливает флаг close-on-exec (FD_CLOEXEC) для нового открытого файлового дескриптора. Смотрите описание флага O_CLOEXEC в open(2) для того, чтобы узнать как это может пригодиться.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении данные системные вызовы возвращают новый файловый дескриптор. При ошибке возвращается -1 и errno устанавливается в соответствующее значение.
ОШИБКИ
EINVAL (inotify_init1()) Указано неверное значение в flags. EMFILE Достигнуто максимальное количество экземпляров inotify доступных пользователю. EMFILE Было достигнуто ограничение по количеству открытых файловых дескрипторов на процесс. ENFILE Достигнуто максимальное количество открытых файлов в системе. ENOMEM Не хватает памяти ядра.
ВЕРСИИ
inotify_init() first appeared in Linux 2.6.13; library support was added in glibc 2.4. inotify_init1() was added in Linux 2.6.27; library support was added in glibc 2.9.
СТАНДАРТЫ
Данные системные вызовы есть только в Linux.
СМ. ТАКЖЕ
inotify_add_watch(2), inotify_rm_watch(2), inotify(7)
ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com> Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.