1 Star 0 Fork 13

zcy543814 / libevent

forked from 刘丹冰Aceld / libevent 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
42_zhi_ming_cuo_wu_hui_diao_she_zhi.md 1002 Bytes
一键复制 编辑 原始数据 按行查看 历史

9.2 致命错误回调设置

libevent 在检测到不可恢复的内部错误时的默认行为是调用exit()或者abort(),退出正在运行的进程。这类错误通常意味着某处有bug:要么在你的代码中,要么在libevent 中。

如果希望更优雅地处理致命错误,可以为libevent 提供在退出时应该调用的函数,覆盖默认 行为。

typedef void (*event_fatal_cb)(int err);
void event_set_fatal_callback(event_fatal_cb cb);

要使用这些函数,首先定义libevent 在遇到致命错误时应该调用的函数,将其传递给 event_set_fatal_callback()。

随后libevent 在遇到致命错误时将调用你提供的函数。 你的函数不应该将控制返回到libevent:这样做可能导致不确定的行为。

为了避免崩溃,libevent 还是会退出。你的函数被不应该调用其它libevent 函数。 这些函数声明在<event2/event.h>中,在libevent 2.0.3-alpha 版本中首次出现。

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zcy543814/libevent.git
git@gitee.com:zcy543814/libevent.git
zcy543814
libevent
libevent
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891