libevent是一个非同步事件处理软体函式库,以BSD许可证释出。官方网站: http://www.monkey.org/~provos/libevent/
libevent提供了一组应用程序编程接口(API),让程式设计师可以设定某些事件发生时所执行的函式,也就是说,libevent可以用来取代网路服务器所使用的事件轮询检查架构。
由于可以省去对网路的处理,且拥有不错的效能,有些软体使用libevent作为网路底层的函式库,如:memcached、Tor。
支持事件类型
目前libevent支援以下的方式判断事件的发生:
- 几乎所有的Unix平台都有提供的函式。
- 以Solaris平台为主。
- 以BSD平台为主。
- 以Linux平台为主。
主要版本
- libevent 0.1(2000年11月4日):第一个公开版本。
- libevent 1.0(2004年12月5日),支援多线程。
- libevent 1.1(2005年5月14日)。
- libevent 1.2(2006年10月15日):支援DNS用户端查询函式、支援HTTP用户端及伺服器端函式。
- libevent 1.3(2007年2月15日):支援DNS伺服器端函式。
- libevent 1.4(2008年4月7日):新的RPC子系统。将内部数据结构由红黑树改为堆(Heap)以增加效率。
- libevent 2.0(2009年11月19日)。
|