libev 4.27 更新 Linux AIO 支持

栏目: 软件资讯 · 发布时间: 6年前

内容简介:介绍 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进行创建.
  • 一些次要的代码清理工作.

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人人时代

人人时代

[美]克莱•舍基(Clay Shirky) / 胡泳、沈满琳 / 中国人民大学出版社 / 2012-8 / 49.90元

[内容简介] •一而再,再而三出现的公众事件,绝不仅是来自草根的随兴狂欢,而是在昭示着一种变革未来的力量之崛起!基于爱、正义、共同的喜好和经历,人和人可以超越传统社会的种种限制,灵活而有效地采用即时通信、移动电话、网络日志和维基百科等新的社会性工具联结起来,一起分享、合作乃至展开集体行动。人人时代已经到来。 •微软、诺基亚、宝洁、BBC、乐高、美国海军最推崇的咨询顾问,“互联网革命最伟......一起来看看 《人人时代》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码