内容简介
#include <sys/inotify.h>int inotify_add_watch(int%uA0fd, const char *pathname, uint32_t%uA0mask)
描述
inotify_add_watch() adds a new watch, or modifies an existing watch, for the file whose location is specified in%uA0pathname the caller must have read permission for this file. The%uA0fd%uA0argument is a file descriptor referring to the inotify instance whose watch list is to be modified. The events to be monitored for%uA0pathname%uA0are specified in the%uA0maskbit-mask argument. See%uA0inotify(7) for a description of the bits that can be set in%uA0mask.A successful call to%uA0inotify_add_watch() returns the unique watch descriptor associated with%uA0pathname%uA0for this inotify instance. If%uA0pathname%uA0was not previously being watched by this inotify instance, then the watch descriptor is newly allocated. If%uA0pathname%uA0was already being watched, then the descriptor for the existing watch is returned.
The watch descriptor is returned by later%uA0read(2)s from the inotify file descriptor. These reads fetch%uA0inotify_event%uA0structures indicating file system events the returned watch descriptor identifies the object for which the event occurred.
返回值
On success,%uA0inotify_add_watch() returns a non-negative watch descriptor. On error -1 is returned and%uA0errno%uA0is set appropriately.错误
标签 | 描述 |
---|---|
EACCESS | |
%uA0 | Read access to the given file is not permitted. |
EBADF | The given file descriptor is not valid. |
EFAULT | pathname%uA0yiibais outside of the process’s accessible address space. |
EINVAL | The given event mask contains no legal events or%uA0fd%uA0is not an inotify file descriptor. |
ENOMEM | Insufficient kernel memory was available. |
ENOSPC | The user limit on the total number of inotify watches was reached or the kernel failed to allocate a needed resource. |