libevent – an event notification library

The libevent API (libevent应用程序)provides a mechanism(机制) to execute(执行) a callback function(回调函数) when a specific(特别的) event occurs on(发生在) a file descriptor(文件描述符) or after a timeout has been reached.(时间超时之后)

Furthermore(此外), libevent also support callbacks due to(对于) signals(信号) or regular timeouts.(规律性的超时)

libevent is meant to (是为了)replace the event loop (时间循环)found in(分布在) event driven network servers(事件驱动网络服务器). An application just needs to call event_dispatch()and then(然后) add or remove events dynamically (动态地)without having to (而不需要)change the event loop.

Currently, libevent supports /dev/pollkqueue(2)event portsPOSIX select(2)Windows select()poll(2), and epoll(4). The internal event mechanism(内部的事件机制) is completely independent of the exposed(暴露的) event API, and a simple update of libevent can provide new functionality(功能) without having to redesign(重新设计) the applications. As a result, Libevent allows for(允许) portable application(绿色软件) development and provides the most scalable(可扩展的) event notification mechanism available on an operating system. Libevent can also be used for被用于 multi-threaded多线程 applications, either(也) by(通过) isolating(隔离) each event_base(事件库) so that(以便于) only a single thread accesses(访问) it, or by locked(锁定) access to a single shared event_base.Libevent should compile(编译) on Linux, *BSD, Mac OS X, Solaris, Windows, and more.

Libevent additionally(附带的地;此外) provides a sophisticated(复杂的) framework(框架) for buffered(缓冲的) network IO, with support for sockets(套接口), filters(过滤器), rate-limiting(限速), SSL(安全套接层), zero-copy file transmission(零拷贝文件传输), and IOCP输入输出应用程序. Libevent includes support for several useful protocols(协议), including DNS, HTTP, and a minimal(最低地) RPC(远程过程调用) framework(框架).

More information about event notification mechanisms for network servers can be found on(基于) Dan Kegel's "The C10K problem" web page.

mailing list for libevent (libevent邮件列表)is now available. Libevent is maintained(维持) by Nick Mathewson and Niels Provos.

看libevent所遇到的英语生词的更多相关文章

  1. [置顶] think in java interview番外篇-谈程序员如何修练英语

    一.程序员对英语能力的重视度和能力要求应该是在各行各业中排在比较靠前的 这样说吧,英语程度的好坏直接影响着一个程序员的编程.开发.创新能力. 道理很简单: 1. 计算机和软件是用英语创造出来的 2. ...

  2. libevent源码深度剖析

    原文地址: http://blog.csdn.net/sparkliang/article/details/4957667 第一章 1,前言 Libevent是一个轻量级的开源高性能网络库,使用者众多 ...

  3. 项目中libevent几个问题

    几个问题: .libevent到底用的是select还是iocp,然后是如何突破64限制的 typedef struct fd_set { u_int fd_count; /* how many ar ...

  4. HDU-1020-Encoding(水题,但题目意思容易搞错,英语的问题)

    题目链接 http://acm.hdu.edu.cn/webcontest/contest_showproblem.php?pid=1000&ojid=0&cid=7996&h ...

  5. Libevent教程001: 简介与配置

    本文内容大致翻译自 libevent-book, 但不是照本翻译. 成文时, libevent最新的稳定版为 2.1.8 stable. 即本文如无特殊说明, 所有描述均以 2.1.8 stable ...

  6. libevent(了解)

    1 前言 Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,相关文章也不少.写这一系列文章的用意在于,一则分享心得:二则对libevent代码和设计思想做系统的.更深层次的分析, ...

  7. 【学习】JennyHui学英语 - 生词积累

    (主要是来自于普特英语) 平常积累 20140820 20140826 VOA慢速英语生词积累 2014-10-08 2014-10-11 2014-10-13 2014-10-14 2014-10- ...

  8. libevent源码深度剖析二

    libevent源码深度剖析二 ——Reactor模式 张亮 前面讲到,整个libevent本身就是一个Reactor,因此本节将专门对Reactor模式进行必要的介绍,并列出libevnet中的几个 ...

  9. libevent到底是同步还是异步,是阻塞还是非阻塞

    应该从不同角度看libevent的同步/异步.阻塞/非阻塞: IO数量的角度:select出来之前,会阻塞在一个io上,处理完成后再阻塞在下一个io上:之后就是把所有的io fd拿过来,都不阻塞,一个 ...

随机推荐

  1. java学习笔记—c3p0连接池与元数据分析(42)

    第一步:导入c3p0包 第二步:在classpath目录下,创建一个c3p0-config.xml <?xml version="1.0" encoding="UT ...

  2. “全栈2019”Java第二章:安装JDK11(Windows)

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 文章原文链接 "全栈2019"Java第二章:安装JDK11(Windows) 下一 ...

  3. [bzoj3995] [SDOI2015]道路修建 线段树

    Description 某国有2N个城市,这2N个城市构成了一个2行N列的方格网.现在该国政府有一个旅游发展计划,这个计划需要选定L.R两列(L<=R),修建若干条专用道路,使得这两列之间(包括 ...

  4. zTree第三章,异步加载,前端

    zTree异步加载 ---------------------------------------------------------------------------------- 具体详见API ...

  5. 洛谷P5282 【模板】快速阶乘算法(多项式多点求值+MTT)

    题面 传送门 前置芝士 \(MTT\),多项式多点求值 题解 这题法老当初好像讲过--而且他还说这种题目如果模数已经给定可以直接分段打表艹过去 以下是题解 我们设 \[F(x)=\prod_{i=0} ...

  6. Word2007文档中怎么输入上标下标

    1.Word中输出Z = X2 + Y2 此公式流程: 首先在Word中写入:Z = X2 + Y2: 方法1:选中X后面的2,再按组合键“Ctrl+Shift+加号键”即可,如此操作Y后面的2即可.

  7. Leetcode 88 合并两个有序数组 Python

    合并两个有序数组 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分 ...

  8. java日期时间

    字母 日期或时间元素 表示 示例 G Era 标志符 Text AD y 年 Year 1996; 96 M 年中的月份 Month July; Jul; 07 w 年中的周数 Number 27   ...

  9. 基于CentOS7系统一键配置Aria2 实现服务器离线下载工具

    我们有些网友购买的海外VPS主机并不是用来做网站的,而是用来作为下载资源工具使用的.确实用这样的工具搭建之后是比本地下载速度快,因为有些资源.软件等是海外资源,而且挂载在服务器上不占用本地的资源.在这 ...

  10. G - Game HDU - 5242 (数链剖分)

    题目链接: G - Game HDU - 5242 题目大意:首先是T组测试样例,给出一颗以1节点为根的树,每个节点有各自的价值,有m次从根节点出发向下走到叶子节点的机会,每次会得到所有经过节点的权值 ...