libevent入门篇

文章目录

概述

libevent 和 libev 都是由 c 实现的异步事件库;注册异步事件,检测异步事件,根据事件的触发先

后顺序,调用相对应回调函数处理事件;

处理的事件包括:网络 io 事件、定时事件以及信号事件;

libevent 和 libev 主要封装了异步事件库与操作系统的交互;让用户无需关注平台检测处理事件的

机制的差异,只需关注事件的具体处理;

下载

上边是使用git下载流程。没安装git的,建议安装。

编译

我是在linux服务器上编译的,用的这种方式,用其他平台的,可以参考git上windows上的即可;如下图:

目录

编译后的目录,如下图:

这么多文件,怎么看呢?

sample

一般来说,看到一个开源项目,首先去看看demo;对于libevent来说,sample下面就是它的demo文件。如下图:

hello-world

简单点,看一个代码或者写一个程序,都是从"hello,world"开始,接下来看看hello-world.c。

对于一个简单的tcp服务器,一般都有初始化,创建监听器,处理连接,发送消息,处理信号。

初始化
创建监听器
处理连接
处理信号


这个设置了一个信号事件,用于在接到SIGINT信号时优雅的突出。当接收到这个信号时,程序会等待两秒钟后再退出,以确保所有的事件都被处理完毕。

build

找到这个目录,可以看到编译后的文件。可以执行linux下的文件执行,即可。

按下ctrl+c看看,

其他的,就没了 。

小结

这篇主要写了libevent这个开源库,下载,编译,以及用hello-world.c入门。好了,入门就写到这了。有兴趣,一起学习学习。OK,结束。

相关推荐
fpcc2 分钟前
跟我学C++中级篇—C++17中的元编程逻辑操作
c++·模板编程
HABuo2 分钟前
【Linux进程(五)】进程地址空间深入剖析-->虚拟地址、物理地址、逻辑地址的区分
linux·运维·服务器·c语言·c++·后端·centos
AuroraWanderll22 分钟前
类和对象(六)--友元、内部类与再次理解类和对象
c语言·数据结构·c++·算法·stl
Tim_1026 分钟前
【C++入门】05、复合类型-数组
开发语言·c++·算法
jikiecui26 分钟前
信奥崔老师:三目运算 (Ternary Operator)
数据结构·c++·算法
无限进步_27 分钟前
【C语言&数据结构】另一棵树的子树:递归思维的双重奏
c语言·开发语言·数据结构·c++·算法·github·visual studio
汉克老师27 分钟前
GESP2025年9月认证C++一级真题与解析(判断题1-10)
c++·数据类型·累加器·循环结构·gesp一级·gesp1级
不爱吃糖的程序媛37 分钟前
OpenHarmony跨端生态适配全指南|Flutter/RN/三方库/C/C++/仓颉 鸿蒙化最佳实践
c语言·c++·flutter
fqbqrr1 小时前
2601C++,模块3
c++
坤虫debug1 小时前
C++ static_cast 解析:零成本的类型安全转换
c++