好久之前就搞过Libevent,不过没有深入搞下去。只知道它是个网络库,却不太清楚它运行的原理。
现在就要学习libevent,加深对网络这块的理解。学习libevent首先就需要提出问题,然后才好解决问题。
提出问题:
1. libevent是什么?有什么作用?
2. libevent如何编译?如何在vs2005等环境中使用libevent?
3. 如何使用libevent?
4. libevent其内部原理是什么?
暂时先提出这几个问题,后面若遇到新的问题再记录。
解决问题:
1. libevent是什么?
答:一个以事件驱动的网络库;轻量型的跨平台的网络库,使用C语言编写而成。
参考:
1. http://libevent.org/
2. http://blog.csdn.net/liuguanghui1988/article/details/7041369
2. libevent如何编译?如何在vs2005等环境中使用libevent?
答:一般在VC中使用需要.h和lib文件。根据网上的很多参考资料,编译libevent很简单,因为自带了Makefile.nmake。
只要打开VS2005 Command相关的命令符,进入libevent解压后的目录,执行"nmake Makefile.nmake"就OK了。
总共编译出来3个静态库,libevent.lib,libevent_core.lib,libevent_extra.lib;
在VC中配置方法:
主要是将.h和相关的lib添加到VS2005中。
具体可参考:http://blog.csdn.net/bobo0123/article/details/6706957和http://blog.csdn.net/mxfeng/article/details/17231927