内容简介:介绍 libev是一个C语言实现的高性能事件驱动网络库, 目前能在多个平台下提供高性能后端支持. 更新内容 这个版本主要增加了一个新的后端,"Linux AIO",它使用了新的Linux 4.18引入的事件轮询机制. 它目前在默认情...
介绍
libev是一个 C语言 实现的高性能事件驱动网络库, 目前能在多个平台下提供高性能后端支持.
更新内容
这个版本主要增加了一个新的后端,"Linux AIO",它使用了新的 Linux 4.18引入的事件轮询机制.
它目前在默认情况下不会被使用. 除非您明确向标志添加EVBACKEND_LINUXAIO或通过设置LIBEV_FLAGS环境变量。
Linux AIO后端可能会在后期添加到推荐后端当中并且优先于epoll(可能是4.28).
如果Linux AIO可用将会使用它,否则会自动回退到epoll和poll/select的后端实现,你可以像这样运行它:
LIBEV_FLAGS = 127 ./myprog
您可以这样来尝试强制使用Linux AIO:
LIBEV_FLAGS = 64 ./myprog
4.27 更新:
- 近乎完全重写的Linux AIO, 解决了诸多的限制.
- 在Linux AIO的后端中还强制依赖一些epoll实现(epoll backend now mandatory for linux aio backend).
- 对于无效的fd(文件描述符)会在事件循环中进行断言而非之前的默默丢弃.
- 当EV_VERIFY宏定义为2或更高的时候, 会在ev_io_start/ev_io_stop中使用系统调用验证观察者fd.
4.26 更新:
- 更新libecb至0x00010006.
- 新的实验性Linux AIO后端(linux 4.18+).
- 删除了ev_once中的冗余检查.
- 更新ev_set_allocator文档.
- 通过array_needsize_noinit替换了EMPTY2宏.
- epoll后端在fork之后使用epoll_create1进行创建.
- 一些次要的代码清理工作.
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Vardump 更新,支持打印各种 Java 数据结构,支持嵌套
- Vardump 更新,支持打印各种 Java 数据结构,支持嵌套
- Java 8 语言功能支持更新
- ViewPager2重大更新,支持offscreenPageLimit
- Microsoft Edge 更新,提供暗黑模式支持
- OSCHINA APP 更新,文章支持代码高亮
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。