区分epoll、kqueue、libevent

epoll
linux

kqueue
2000 年 7 月发布的 FreeBSD 4.1 中首次引入了 kqueue[1],随后也被 NetBSD、OpenBSD、macOS 等操作系统支持。

libevent
一个异步事件处理软件库,以BSD许可证发布。
目前,libevent已支持以下接口/dev/poll, kqueue(2), event ports, select(2), poll(2) 和epoll(4)。
libevent的内部事件机制完全是基于所使用的接口的。因此libevent非常容易移植, 也使它的扩展性非常容易。目前,libevent已在以下操作系统中编译通过: Linux,BSD,Mac OS X,Solaris和Windows。
libevent的高明之处还在于,它把fd读写、信号、DNS、定时器甚至idle(空闲) 都抽象化成了event(事件)。

参考:
https://zhuanlan.zhihu.com/p/20315482(网络编程(三):从libevent到事件通知机制)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容