Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux MACOSX(BSD)等效于fcntl()函数的F_NOTIFY标志_Linux_Macos_Bsd_Fcntl - Fatal编程技术网

Linux MACOSX(BSD)等效于fcntl()函数的F_NOTIFY标志

Linux MACOSX(BSD)等效于fcntl()函数的F_NOTIFY标志,linux,macos,bsd,fcntl,Linux,Macos,Bsd,Fcntl,有人知道在基于BSD的系统中fcntl函数的F_NOTIFY标志的等效值吗? 此标志允许您接收有关文件事件的通知 (例如,文件打开、文件关闭、写入文件的字节数、从文件读取的字节数)。 此标志在Linux中存在,但在MACOSX(基于BSD的系统)中不存在 引自LinuxMan: 文件和目录更改通知 (dnotify) 整数fcntl(整数fd,整数cmd,…/*arg */ ); F_通知(长) (Linux 2.4及以后版本)在目录 由fd或任何文件引用 它所包含的内容已更改 实际上,任何允许

有人知道在基于BSD的系统中fcntl函数的F_NOTIFY标志的等效值吗? 此标志允许您接收有关文件事件的通知 (例如,文件打开、文件关闭、写入文件的字节数、从文件读取的字节数)。 此标志在Linux中存在,但在MACOSX(基于BSD的系统)中不存在

引自LinuxMan:

文件和目录更改通知 (dnotify)

整数fcntl(整数fd,整数cmd,…/*arg */ );

F_通知(长) (Linux 2.4及以后版本)在目录 由fd或任何文件引用 它所包含的内容已更改

实际上,任何允许我接收文件事件的API对我来说都足够了

有人知道F_NOTIFY是否有替代品吗?
此时我只有一个想法:使用kqueue()、kevent()函数。

没有完全等效的函数;使用
EVFILT\u VNODE
事件过滤器是OSX上的替代品

注意,即使在Linux中,F_NOTIFY也已被替换为