1

我正在尝试使用 kqueue 在 c 中做一个面向事件的服务器,当我编译我的代码时它给了我这个错误

致命错误:sys/event.h:没有这样的文件或目录

根据我正在遵循的创建文件必须包含的 kqueue 事件的教程,我是 C 中事件编程的新手

4

3 回答 3

4

kqueue仅存在于 BSD (FreeBSD / OpenBSD) 和 Darwin (Mac OS X / iOS) 内核中。它不存在于 Linux 内核中。

Linux 上最接近的等价物是epoll异步 I/O 和inotify文件系统监视。

于 2013-11-03T02:07:22.287 回答
1

kqueue 是 BSD 的一个特性。你不能在 Linux 上使用它。Linux 上的等效功能是 epoll。

于 2013-11-03T02:06:16.603 回答
1

如果您想在 BSD 以外的任何平台上尝试 kqueue,那么https://github.com/mheily/libkqueue库是您的最佳选择!试试这个。

于 2019-11-03T08:45:15.700 回答