libevent
huangyimo
这个作者很懒,什么都没留下…
展开
-
libevent参考手册第二章:创建event_base (四)
译自http://www.wangafu.net/~nickm/libevent-book/Ref2_eventbase.html转自:http://blog.sina.com.cn/s/blog_56dee71a0100qdxx.html 使用libevent函数之前需要分配一个或者多个event_base结构体。每个event_base结构体持有一个事件集合,可以检测以转载 2015-07-08 10:59:39 · 487 阅读 · 0 评论 -
libevent实现echoclient
基于libevent实现了一个简单的echoclient。之前在网上看到的都是echoserver。这里演示一下使用libevent进行客户端编程的基本步骤。先看代码:[cpp] view plain copy#include "stdafx.h" #include "event2/event.h" #include "e转载 2016-09-08 14:56:10 · 435 阅读 · 0 评论 -
windows下编译及使用libevent
Libevent官网:http://libevent.org/windows 7下编译:编译环境: windows 7 + VS2010(1)解压libevent到F:\libevent\libevent-2.0.21-stable(2)打开Microsoft visual studio 2010命令行工具(3)修改以下三个文件,添加宏定义:在以转载 2016-06-13 20:14:12 · 376 阅读 · 0 评论 -
libevent参考手册第六章:bufferevent:概念和入门 (八)
很多时候,除了响应事件之外,应用还希望做一定的数据缓冲。比如说,写入数据的时候,通常的运行模式是:l 决定要向连接写入一些数据,把数据放入到缓冲区中l 等待连接可以写入l 写入尽量多的数据l 记住写入了多少数据,如果还有更多数据要写入,等待连接再次可以写入这种缓冲IO模式很通用,libevent为此提供了一种通用机制,即bufferevent。buffere转载 2015-07-08 11:05:56 · 849 阅读 · 0 评论 -
Libevent参考手册第三章:与事件循环一起工作 (五)
译自http://www.wangafu.net/~nickm/libevent-book/Ref3_eventloop.html转自:http://blog.sina.com.cn/s/blog_56dee71a0100qe76.html1 运行循环一旦有了一个已经注册了某些事件的event_base(关于如何创建和注册事件请看下一节),就需要让libevent等待事件并且通转载 2015-07-08 11:01:45 · 648 阅读 · 0 评论 -
Libevent参考手册第一章:设置libevent (三)
翻译自:http://www.wangafu.net/~nickm/libevent-book/Ref1_libsetup.html转自http://blog.sina.com.cn/s/blog_56dee71a0100q9ks.htmllibevent有一些被整个进程共享的、影响整个库的全局设置。必须在调用libevent库的任何其他部分之前修改这些设置,否则,libevent转载 2015-07-08 10:58:33 · 702 阅读 · 0 评论 -
Libevent参考手册:前言 (二)
翻译自:http://www.wangafu.net/~nickm/libevent-book/Ref0_meta.html转自:http://blog.sina.com.cn/s/blog_56dee71a0100q7j6.html1 从一万英尺外看LibeventLibevent是用于编写高速可移植非阻塞IO应用的库,其设计目标是:v 可移植性:使用lib转载 2015-07-08 10:56:18 · 473 阅读 · 0 评论 -
使用Libevent的快速可移植非阻塞网络编程:异步IO简介 (一)
原文出处:http://www.wangafu.net/~nickm/libevent-book/01_intro.html转自: http://blog.sina.com.cn/s/blog_56dee71a0100q2i9.html大多数程序员从阻塞IO调用开始学习。如果调用在操作完成之前,或者足够的时间已经流逝使得网络栈放弃操作之前,不会返回,那么就是异步的。比如说,在TCP转载 2015-07-08 10:55:10 · 839 阅读 · 0 评论 -
libevent学习资料
The libevent API provides a mechanism to execute a callback function when aspecific event occurs on a file descriptor or after a timeout has beenreached. Furthermore, libevent also support callbac转载 2015-07-08 10:49:32 · 378 阅读 · 0 评论 -
libevent参考手册第九章:连接监听器:接受TCP连接 (十一)
译自http://www.wangafu.net/~nickm/libevent-book/Ref8_listener.htmlevconnlistener机制提供了监听和接受TCP连接的方法。本章的所有函数和类型都在event2/listener.h中声明,除非特别说明,它们都在2.0.2-alpha版本中首次出现。1 创建和释放evconnlistener接口转载 2015-07-08 11:10:32 · 591 阅读 · 0 评论 -
libevent参考手册第八章:evbuffer:缓冲IO实用功能 (十)
译自http://www.wangafu.net/~nickm/libevent-book/Ref7_evbuffer.htmllibevent的evbuffer实现了为向后面添加数据和从前面移除数据而优化的字节队列。evbuffer用于处理缓冲网络IO的“缓冲”部分。它不提供调度IO或者当IO就绪时触发IO的功能:这是bufferevent的工作。除非特别说明,本转载 2015-07-08 11:09:59 · 634 阅读 · 0 评论 -
libevent网络编程例子(1)
这篇文章介绍下libevent在socket异步编程中的应用。在一些对性能要求较高的网络应用程序中,为了防止程序阻塞在socket I/O操作上造成程序性能的下降,需要使用异步编程,即程序准备好读写的函数(或接口)并向系统注册,然后在需要的时候只向系统提交读写的请求之后就继续做自己的事情,实际的读写操作由系统在合适的时候调用我们程序注册的接口进行。异步编程会给一些程序猿带来一些理解和编写上的困难,转载 2015-07-08 17:26:40 · 1146 阅读 · 0 评论 -
基于事件的开源网络库—libevent:应用实例
七、应用实例本文例子不加修改在windows下运行(须定义宏WIN32,链接ws2_32.lib,libevent_core.lib),稍加修改(例如去掉windows所特有的socket初始化)可运行于Linux。1. 最简单的例子,定时器该例子创建了一个event_base,在此base上,增加了两个event,也就是设置了两个定时器,主要用来测试事件处转载 2015-07-08 11:39:58 · 519 阅读 · 0 评论 -
libevent参考手册第五章:辅助类型和函数 (七)
译自http://www.wangafu.net/~nickm/libevent-book/Ref5_evutil.html 转自:http://blog.sina.com.cn/s/blog_56dee71a0100qo9t.html定义了很多在实现可移植应用时有用的函数,libevent内部也使用这些类型和函数。1 基本类型1.1 evutil_soc转载 2015-07-08 11:04:51 · 556 阅读 · 0 评论 -
libevent: evbuffer缓冲
前言 可以说对于任何网络库(模块)而言,一个缓冲模块都是必不可少的。缓冲模块主要用于缓冲从网络接收到的数据,以及用户提交的数据(用于发送)。很多时候,我们还需要将网络模块层(非TCP层)的这些缓冲数据拷贝到用户层,而这些内存拷贝都会消耗时间。 在这里,我简要分析下libevent的相关代码(event.h和buffer.c)。结构 关于libe转载 2015-07-08 10:53:33 · 467 阅读 · 0 评论 -
基于事件的开源网络库—libevent:应用介绍
一、简介因memcached(见上一篇“数据缓存系统-memcached介绍”)使用了libevent作为它对外界事件(磁盘、网络等)的监控,所以对libevent就一同进行了了解、应用。按libevent的官网(http://libevent.org/)介绍,libevent是一个监视特定事件,提供回调函数的C++库,它可以监视的事件包括:1. 能以文件描述符表转载 2015-07-08 11:37:37 · 594 阅读 · 0 评论 -
libevent参考手册第七章:Bufferevent:高级话题 (九)
译自http://www.wangafu.net/~nickm/libevent-book/Ref6a_advanced_bufferevents.html 本章描述bufferevent的一些对通常使用不必要的高级特征。如果只想学习如何使用bufferevent,可以跳过这一章,直接阅读下一章。1 成对的bufferevent有时候网络程序需要与自身通信。比如说,转载 2015-07-08 11:08:43 · 785 阅读 · 0 评论 -
libevent参考手册第四章:与事件一起工作 (六)
译自http://www.wangafu.net/~nickm/libevent-book/Ref4_event.html转自:http://blog.sina.com.cn/s/blog_56dee71a0100qi0y.htmllibevent的基本操作单元是事件。每个事件代表一组条件的集合,这些条件包括:v 文件描述符已经就绪,可以读取或者写入v 文件描述转载 2015-07-08 11:03:04 · 1009 阅读 · 0 评论 -
Libevent使用例子,从简单到复杂
本文从简单到复杂,展示如何使用libevent。网上的许多例子都是只有服务器端的,本文里面客户端和服务器端都有,以飨读者。 关于libevent编程时的一些疑问可以阅读《libevent编程疑难解答》。假如读者还想了解libevent的具体实现,可以阅读《libevent源码分析》系统文章。 不说这么多了,直接上代码。转载 2017-06-23 09:54:23 · 405 阅读 · 0 评论