libevent | 2.libevent基本概念以及应用方法(附:动态库找不到的处理方法)

一.libevent的基本概念

  1. libevent的基本特点:
    (1).C语言编写,开源,开发效率高;
    (2).封装了socket通信和IO多路转接;
    (3).代码精简专注于网络,性能高;
    (4).事件驱动:将网络io处理转化为事件处理即libevent是对reactor的一个封装;
  2. libevent的安装:libevent安装方法

二.libevent应用方法

流程: 创建事件管理器 → 创建事件 → 将事件添加到事件管理器 → 开始事件循环 → 释放资源

1. 创建事件管理器
函数: struct event_base * event_base_new(void);

返回值: 成功返回结构体指针,失败返回NULL;

注释: 每个event_base持有一个事件集合,可以检测哪个事件是激活的;

附:
1)查看event_base封装的后端:
	函数:(1)`const char ** event_get_supported_methods(void);`
		注释:查看后台支持的所有方式(select,poll,epoll)
	函数:(2)`const char * event_base_get_method(const struct event_base *base);`
		注释:查看当前使用的方式
2)子进程中需要继续使用event_base需要进行初始化
    	 函数:`int event_reinit(struct event_base *);`

2. 创建事件(不带缓冲区的

你可能感兴趣的:(libevent,linux,epoll,网络)