<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>高并发 on UOG的BLOG</title>
		<link>https://uogog.github.io/tags/%E9%AB%98%E5%B9%B6%E5%8F%91/</link>
		<description>Recent content in 高并发 on UOG的BLOG</description>
		<generator>Hugo</generator>
		<language>zh-cn</language>
		
		
		
		
			<lastBuildDate>Tue, 21 Jul 2026 10:00:00 +0800</lastBuildDate>
		
			<atom:link href="https://uogog.github.io/tags/%E9%AB%98%E5%B9%B6%E5%8F%91/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>libevent 常用函数速查</title>
				<link>https://uogog.github.io/posts/libevent/</link>
				<pubDate>Tue, 21 Jul 2026 10:00:00 +0800</pubDate>
				<guid>https://uogog.github.io/posts/libevent/</guid>
				<description>&lt;h1 id=&#34;libevent-常用函数速查&#34;&gt;&#xA;  libevent 常用函数速查&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#libevent-%e5%b8%b8%e7%94%a8%e5%87%bd%e6%95%b0%e9%80%9f%e6%9f%a5&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;libevent 是一个轻量级、高性能的事件通知库，封装了 &lt;code&gt;select&lt;/code&gt;/&lt;code&gt;poll&lt;/code&gt;/&lt;code&gt;epoll&lt;/code&gt;/&lt;code&gt;kqueue&lt;/code&gt; 等底层多路复用机制，提供统一的事件驱动 API。&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h1 id=&#34;安装&#34;&gt;&#xA;  安装&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e5%ae%89%e8%a3%85&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;h2 id=&#34;ubuntu--debian&#34;&gt;&#xA;  Ubuntu / Debian&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#ubuntu--debian&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install libevent-dev&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;安装后头文件在 &lt;code&gt;/usr/include/event2/&lt;/code&gt;，库文件为 &lt;code&gt;libevent_core.so&lt;/code&gt; 和 &lt;code&gt;libevent_extra.so&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;h2 id=&#34;源码编译&#34;&gt;&#xA;  源码编译&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e6%ba%90%e7%a0%81%e7%bc%96%e8%af%91&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar xzf libevent-2.1.12-stable.tar.gz&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; libevent-2.1.12-stable&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./configure --prefix&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make -j&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;nproc&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo make install&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ldconfig 更新动态库缓存&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ldconfig&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;编译链接&#34;&gt;&#xA;  编译链接&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%e7%bc%96%e8%af%91%e9%93%be%e6%8e%a5&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gcc -o myapp myapp.c -levent&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 如果使用了 bufferevent 等扩展功能：&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gcc -o myapp myapp.c -levent -levent_extra&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;注意&lt;/strong&gt;：&lt;code&gt;-levent&lt;/code&gt; 链接的是 &lt;code&gt;libevent_core.so&lt;/code&gt;，bufferevent / evhttp / evdns 等功能在 &lt;code&gt;libevent_extra.so&lt;/code&gt; 中，需要 &lt;code&gt;-levent_extra&lt;/code&gt;。&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
