libevent

您所在的位置:网站首页 libevent手册 libevent

libevent

#libevent| 来源: 网络整理| 查看: 265

翻译自:

http://www.wangafu.net/~nickm/libevent-book/Ref0_meta.html

 

1  

从一万英尺外看

Libevent

 

Libevent

是用于编写高速可移植非阻塞

IO

应用的库,其设计目标是:

 

 

可移植性:

使用

libevent

编写的程序应该可以在

libevent

支持的所有平台上工作。

即使没

有好的方式进行非阻塞

IO

libevent

也应该支持一般的方式,

让程序可以在受限的环境

中运行。

 

 

速度:

libevent

尝试使用每个平台上最高速的非阻塞

IO

实现,并且不引入太多的额外开

销。

 

 

可扩展性:

libevent

被设计为程序即使需要上万个活动套接字的时候也可以良好工作。

 

 

方便:无论何时,最自然的使用

libevent

编写程序的方式应该是稳定的、可移植的。

 

  

libevent

由下列组件构成:

 

 

evutil

:用于抽象不同平台网络实现差异的通用功能。

 

 

event

event_base

libevent

的核心,为各种平台特定的、基于事件的非阻塞

IO

后端提

供抽象

API

,让程序可以知道套接字何时已经准备好,可以读或者写,并且处理基本的

超时功能,检测

OS

信号。

 

 

bufferevent

:为

libevent

基于事件的核心提供使用更方便的封装。除了通知程序套接字

已经准备好读写之外,还让程序可以请求缓冲的读写操作,可以知道何时

IO

已经真正

发生。

bufferevent

接口有多个后端,

可以采用系统能够提供的更快的非阻塞

IO

方式,

Windows

中的

IOCP

。)

 

 

evbuffer

:在

bufferevent

层之下实现了缓冲功能,并且提供了方便有效的访问函数。

 

 

evhttp

:一个简单的

HTTP

客户端

/

服务器实现。

 

 

evdns

:一个简单的

DNS

客户端

/

服务器实现。

 

 

evrpc

:一个简单的

RPC

实现。

 

2  

 

创建

libevent

时,默认安装下列库:

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3