<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Libevent</id>
	<title>Libevent - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Libevent"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Libevent&amp;action=history"/>
	<updated>2026-07-09T11:11:32Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=Libevent&amp;diff=233969&amp;oldid=prev</id>
		<title>2025年6月20日 (五) 03:12 imported&gt;Hrs81458</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Libevent&amp;diff=233969&amp;oldid=prev"/>
		<updated>2025-06-20T03:12:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{lowercase}}&lt;br /&gt;
{{NoteTA|G1=IT|G2=FL}}&lt;br /&gt;
{{Infobox Software&lt;br /&gt;
|name = libevent&lt;br /&gt;
|caption = libevent&lt;br /&gt;
|author = Azat Khuzhin, Mark Ellzey, [[尼克·馬修森]], Niels Provos&lt;br /&gt;
|released = {{release date and age|2002|04|09}}&amp;lt;ref&amp;gt;{{cite web |title=libevent Releases |url=https://github.com/libevent/libevent/releases |website=Github |accessdate=30 August 2019 |archive-date=2020-06-18 |archive-url=https://web.archive.org/web/20200618030216/https://github.com/libevent/libevent/releases |dead-url=no }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
|latest release version = 2.1.12&lt;br /&gt;
|latest release date = {{release date and age|2020|07|05}}&lt;br /&gt;
|latest preview version =&lt;br /&gt;
|latest preview date =&lt;br /&gt;
|operating system = &lt;br /&gt;
|platform = [[跨平臺]]&lt;br /&gt;
|language = [[C語言]]、[[C++]]&lt;br /&gt;
|genre = 網路[[函式庫]]&lt;br /&gt;
|license = [[BSD許可證]]&amp;lt;ref&amp;gt;{{cite web |title=LICENSE |url=https://github.com/libevent/libevent/blob/master/LICENSE |website=Github |accessdate=30 August 2019 |archive-date=2021-03-29 |archive-url=https://web.archive.org/web/20210329003513/https://github.com/libevent/libevent/blob/master/LICENSE }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
|website = {{URL|https://libevent.org/}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;libevent&amp;#039;&amp;#039;&amp;#039;是一個[[异步]][[事件驅動程式設計|事件]]處理[[軟體]][[函式庫]]。libevent是一个提供异步事件通知的软件库。libevent提供了一組[[應用程序編程接口]]（API），libevent API提供的机制允许开发者为事件注册回调[[函式]]，例如文件描述符上的发生了特定事件或者等待特定事件超时，接收到信号的事件，常规的定时器超时事件。当事件發生時，libevent实例会执行回调函数。libevent 在设计上是用来替代很多[[事件驅動程式設計|事件驱动]]网络服务器自行实现的事件循环框架的。&lt;br /&gt;
也就是說，libevent可以用來取代[[互联网|網路]][[伺服器]]所使用的[[事件循环]]檢查框架。&lt;br /&gt;
&lt;br /&gt;
libevent 现在支持 &amp;lt;code&amp;gt;/dev/poll&amp;lt;/code&amp;gt;，[[kqueue|kqueue(2)]]，POSIX [[select (Unix)|select(2)]]，Windows [[IOCP]]，[[poll|poll(2)]]，[[epoll|epoll(7)]]，和 [[Solaris]]端口。libevent 对实时信号有试验性支持。libevent 暴露出的 API 在全平台都是一致的，因此 libevent 支持[[软件可移植性|可移植的]]应用程序开发，并提供“操作系统上最可扩展的事件通知机制”&amp;lt;ref&amp;gt;http://libevent.org/ {{Wayback|url=http://libevent.org/ |date=20210204141230 }} Libevent web page&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
开发者通过 libevent 注册信号回调，可以编写“安全”的信号处理程序，因为用户提供的信号处理程序都不会在[[Unix信号|信号]] 处理[[上下文 (计算机)|上下文]]中运行。&lt;br /&gt;
&lt;br /&gt;
由於可以省去對網路的處理，且擁有不錯的效能，有些軟體使用libevent作為網路底層的函式庫，如：[[memcached]]、[[Tor]]。&lt;br /&gt;
&lt;br /&gt;
libevent由Niels Provos创建，主要由[[尼克·馬修森]]维护&amp;lt;ref&amp;gt;{{cite web|last1=Mathewson|first1=Nick|title=Nick Mathewson|url=http://www.wangafu.net/~nickm/|website=Nick Mathewson&amp;#039;s Homepage|accessdate=10 January 2015|archive-date=2020-10-27|archive-url=https://web.archive.org/web/20201027210621/http://www.wangafu.net/~nickm/|dead-url=no}}&amp;lt;/ref&amp;gt;，以[[BSD許可證]]发布&amp;lt;ref&amp;gt;http://www.monkey.org/~provos/libevent/LICENSE {{Wayback|url=http://www.monkey.org/~provos/libevent/LICENSE |date=20160426204608 }} License of libevent&amp;lt;/ref&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
== 支持级别 ==&lt;br /&gt;
&lt;br /&gt;
目前libevent支持以下的方式判斷IO事件：&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;poll(2)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;select(2)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: 幾乎所有的[[Unix]]平台都有提供的函式。&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;/dev/pool&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: 以[[Solaris]]平台為主。&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;kqueue(2)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: 以[[BSD]]平台為主。&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;epoll(2)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: 以[[Linux]]平台為主。&lt;br /&gt;
&lt;br /&gt;
== 主要版本 ==&lt;br /&gt;
* libevent 0.1（2000年11月4日）：第一個公開版本。&lt;br /&gt;
* libevent 1.0（2004年12月5日），支持多[[线程]]。&lt;br /&gt;
* libevent 1.1（2005年5月14日）。&lt;br /&gt;
* libevent 1.2（2006年10月15日）：支援[[DNS]][[用戶端]]查詢函式、支援[[HTTP]]用戶端及[[伺服器]]端函式。&lt;br /&gt;
* libevent 1.3（2007年2月15日）：支援DNS伺服器端函式。&lt;br /&gt;
* libevent 1.4（2008年4月7日）：新的RPC子系統。將內部[[資料結構]]由[[pull]]改為[[push]]（Heap）以增加效率。&lt;br /&gt;
* libevent 2.0（2009年11月19日）。&lt;br /&gt;
&lt;br /&gt;
== 使用 libevent 的著名软件 ==&lt;br /&gt;
&lt;br /&gt;
利用过 libevent 的一些著名的应用程序包括:&lt;br /&gt;
*[[Google Chrome]]: Google&amp;#039;s Web 浏览器 (Mac 和 Linux 版本)&lt;br /&gt;
*[[Memcached]]: 一个高性能的分布式内存对象缓存系统&amp;lt;ref&amp;gt;{{cite web|url=https://raw.githubusercontent.com/memcached/memcached/776f9791d06754b1b902a5ac7b845827d114ddcd/memcached.h|title=memcached.h at Master|accessdate=2020-02-24|archive-date=2020-02-24|archive-url=https://web.archive.org/web/20200224034249/https://raw.githubusercontent.com/memcached/memcached/776f9791d06754b1b902a5ac7b845827d114ddcd/memcached.h|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
*[[Transmission (BitTorrent client)|Transmission]]: 一个开源的 [[BitTorrent (协议)]]客户端。&amp;lt;ref&amp;gt;{{cite web|url=https://raw.githubusercontent.com/transmission/transmission/master/libtransmission/trevent.c|title=libtransmission/trevent.c at Master at transmission/transmission - GitHub|accessdate=2020-02-24|archive-date=2020-02-24|archive-url=https://web.archive.org/web/20200224034245/https://raw.githubusercontent.com/transmission/transmission/master/libtransmission/trevent.c|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[ntpd]]: 网络时间协议 [[daemon (computing)|daemon]] &amp;lt;ref&amp;gt;{{cite web|url=https://github.com/ntp-project/ntp/blob/9c75327c3796ff59ac648478cd4da8b205bceb77/lib/isc/win32/app.c|title=lib/isc/win32/app.c - ntp-project/ntp - GitHub}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[Tor (anonymity network)|Tor]]: 一个匿名互联网通信系统&amp;lt;ref&amp;gt;{{cite web|url=https://raw.githubusercontent.com/torproject/tor/4f02812242d1fd90d859eb98ac3fb1ed182f18cf/src/lib/evloop/compat_libevent.c|title=src/lib/evloop/compat_libevent.c - torproject/tor - GitHub|accessdate=2020-02-24|archive-date=2020-02-24|archive-url=https://web.archive.org/web/20200224034245/https://raw.githubusercontent.com/torproject/tor/4f02812242d1fd90d859eb98ac3fb1ed182f18cf/src/lib/evloop/compat_libevent.c|dead-url=no}}&amp;lt;/ref&amp;gt;。&lt;br /&gt;
* [[tmux]]: 一个终端多路复用器 &amp;lt;ref&amp;gt;{{cite web|url=https://github.com/tmux/tmux/blob/master/README#L9|title=tmux/README at Master - tmux/tmux - GitHub|accessdate=2020-02-24|archive-date=2019-09-29|archive-url=https://web.archive.org/web/20190929102109/https://github.com/tmux/tmux/blob/master/README#L9|dead-url=no}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 替代品 ==&lt;br /&gt;
* [[libev]]&lt;br /&gt;
* [[libuv]]&lt;br /&gt;
* [[inotify]]&lt;br /&gt;
&lt;br /&gt;
==引用==&lt;br /&gt;
{{reflist|2}}&lt;br /&gt;
== 外部連結 ==&lt;br /&gt;
* {{en}} {{URL|http://libevent.org/}}，libevent的官方網站。&lt;br /&gt;
* {{en}} [https://web.archive.org/web/20220614225524/http://www.kegel.com/c10k.html The C10K problem]，討論連線數破萬時會遇到的瓶頸。&lt;br /&gt;
* {{en}} [http://www.wangafu.net/~nickm/libevent-book/ Libevent 2.0 book] {{Wayback|url=http://www.wangafu.net/~nickm/libevent-book/ |date=20201109014537 }}, libevent 2.0参考书籍&lt;br /&gt;
* {{en}} [http://liboop.ofb.net/ liboop - another asynchronous event notification library] {{Wayback|url=http://liboop.ofb.net/ |date=20200409030543 }}，另一个异步事件库&lt;br /&gt;
* {{en}} [http://libev.schmorp.de/bench.html A benchmark by the libev author comparing libevent with libev, a similar library] {{Wayback|url=http://libev.schmorp.de/bench.html |date=20201109013726 }}，libevent与一个类似的库libev之间比较的基准测试程序&lt;br /&gt;
&lt;br /&gt;
[[Category:事件 (计算机)]]&lt;br /&gt;
[[Category:自由發展元件與函式庫]]&lt;br /&gt;
[[Category:C函式庫]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Hrs81458</name></author>
	</entry>
</feed>