libevent
文章平均质量分 80
G1036583997
这个作者很懒,什么都没留下…
展开
-
libevent源码深度剖析一
转载自:http://blog.csdn.net/sparkliang/article/details/4957667 libevent源码深度剖析一 ——序幕 张亮 1 前言 Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,相关文章也不少。写这一系列文章的用意在于,一则分享心得;二则对libevent代码和设计思想做系统的、更深层次的分析,写出转载 2015-10-20 08:27:37 · 469 阅读 · 0 评论 -
Libevent源码分析-----开篇
我所分析的Libevent版本是2.0.21版本,是目前最新的稳定版本。看这系列博文中,需要读者有Linux编程的一些基础。因为像POSIX、文件描述符、多线程等等这些概念,我并不会去解释,我默认读者已经熟悉这些概念了。如果读者读过《UNIX环境高级编程》,那就完全没问题了。 因为Libevent是跨平台的,所以它使用了很多它自己定义的通用跨平台类型,比如evutil_socke转载 2016-05-23 08:52:30 · 785 阅读 · 0 评论 -
Libevent源码分析-----event-config.h指明所在系统的环境
转载请注明出处: http://blog.csdn.net/luotuo44/article/details/38300965 如果你打开Libevent的一些文件,比如util.h文件。就会发现使用了很多宏定义,并根据一些宏定义而进行条件编译。这些宏定义往往来自event-config.h文件中。 如util.h文件的代码开始处: #ifde转载 2016-05-23 08:54:31 · 584 阅读 · 0 评论 -
Libevent源码分析-----日志和错误处理
转载请注明出处: http://blog.csdn.net/luotuo44/article/details/38317797 日志处理: 在Libevent的源码中,经常会见到形如event_warn、event_msgx、event_err之类的函数。这通常出现在代码中一些值是不合理时。这些函数就是Libevent的日志函数。它能把这些不合理的情况打转载 2016-05-23 09:08:50 · 896 阅读 · 0 评论 -
Libevent源码分析-----内存分配
转载请注明出处: http://blog.csdn.net/luotuo44/article/details/38334979 Libevent的内存分配函数还是比较简单的,并没有定义内存池之类的东西。如同前一篇博客那样,给予Libevent库的使用者充分的设置权(定制),即可以设置用户(Libevent库的使用者)自己的内存分配函数。至于怎么分配,主动权在于用户转载 2016-05-23 09:33:30 · 495 阅读 · 0 评论 -
Libevent源码分析-----多线程、锁、条件变量(一)
转载请注明出处: http://blog.csdn.net/luotuo44/article/details/38350633 Libevent提供给用户的可见多线程API都在thread.h文件中。在这个文件提供的API并不多。基本上都是一些定制函数,像前面几篇博文说到的,可以为Libevent定制用户自己的多线程函数。 开启多线程:转载 2016-05-23 09:46:26 · 465 阅读 · 0 评论 -
Libevent源码分析-----多线程、锁、条件变量(二)
转载请注明出处: http://blog.csdn.net/luotuo44/article/details/38360525 Debug锁操作: Libevent还支持对锁操作的一些检测,进而捕抓一些典型的锁错误。Libevent检查: 解锁自己(线程)没有持有的锁在未解锁前,自己(线程)再次锁定一个非递归锁。 L转载 2016-05-23 10:22:09 · 726 阅读 · 0 评论