文档章节

libevent源码分析1

What_Dream
 What_Dream
发布于 2016/10/05 19:11
字数 316
阅读 48
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

我想成为大牛的必备要素是对各类开源软件有一定程度的了解

Linux是开源软件的圣地,我选择的开源软件首先是libevent,一个用C语言编写的、轻量级的开源高性能网络库。事件驱动( event-driven),高性能;轻量级,专注于网络,都是它的优点。具体可以参考:http://baike.baidu.com/link?url=q1ZDgAv8Z54OkI6IsdoO00vi338B_xIuif-2_VMKopp1zIIldgGDy1Uh4G6Ge8eRuh2CmQNvwAi7Dr8hRyLJKQ53mWlEQnyS2y0JxBmTV6m

先来了解一下libevent的安装过程:(在linux下)

在官网下载http://libevent.org,我下载了最新版本libevent-2.0.22-stable.tar.gz

tar -zxvf ibevent-2.0.22-stable.tar.gz

cd libevent-2.0.22-stable

./configure -prefix=/usr/libevent

sudo make

sudo make install

这样libevent库就安装到你的机器上了,编写一些简单的例子来验证一下

#include <stdio.h>  
#include <event.h>  
  
void onTime(int sock, short event, void *arg)  
{  
    printf("Game over!\n");  
  
    struct timeval tv;  
    tv.tv_sec = 1;  
    tv.tv_usec = 0;  
  
    // 事件执行后,默认就被删除,需要重新add,使之重复执行  
    event_add((struct event*)arg, &tv);  
}  
  
int main()  
{  
    // 初始化事件  
    event_init();  
  
    // 设置定时器回调函数  
    struct event evTime;  
    evtimer_set(&evTime, onTime, &evTime);  
  
    struct timeval tv;  // 1s后执行  
    tv.tv_sec = 1;  
    tv.tv_usec = 0;  
      
    // 添加事件  
    event_add(&evTime,&tv);
    // 循环派发事件  
    event_dispatch();  
  
    return 0;  
}  

保存为timer.c文件

gcc -o timer timer.c -levent

© 著作权归作者所有

What_Dream
粉丝 0
博文 1
码字总数 316
作品 0
武汉
私信 提问
加载中
请先登录后再评论。
libevent源码深度剖析

作者:http://blog.csdn.net/sparkliang/article/category/660506 libevent源码深度剖析十三——libevent信号处理注意点 libevent源码深度剖析十三——libevent信号处理注意点前面讲到了lib...

晨曦之光
2012/03/09
2.9K
0
libevent源码深度剖析

原文地址:http://blog.csdn.net/sparkliang/article/details/4957667 libevent源码深度剖析一 ——序幕 张亮 1 前言 Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,相关...

晨曦之光
2012/03/09
228
0
Libevent源码分析系列【转】

转自:https://www.cnblogs.com/zxiner/p/6919021.html 1.使用libevent库 源码那么多,该怎么分析从哪分析呢?一个好的方法就是先用起来,会用了,然后去看底层相应的源码,这样比较有条理,...

osc_z7d2bxvl
2019/01/30
4
0
CentOS7.6 源码安装 libevent-2.1.8-stable

获取libevent libevent官网:https://libevent.org/ GitHub-libevent项目链接:https://github.com/libevent/libevent 要获取libevent源码包,可以在上面两个网址链接上获取到。本人下载的是...

Kugle
昨天
0
0
libevent源码分析一--io事件响应

这篇文章将分析libevent如何组织io事件,如何捕捉事件的发生并进行相应的响应。这里不会详细分析event与event_base的细节,仅描述io事件如何存储与如何响应。 1. select libevent实现io事件的...

osc_ujeqpb4c
2019/08/15
1
0

没有更多内容

加载失败,请刷新页面

加载更多

java http大文件断点续传上传插件

我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用。 这次项目的需求: 支持大文件的上传和续传,要求续传支持所有浏览器,包...

osc_b9r67jnt
2分钟前
13
0
为什么互联网公司都喜欢自研业务系统?

云栖号资讯:【点击查看更多行业资讯】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 编者按:本文来自微信公众号“PM杨堃”(ID:pmYangKun),作者:杨堃,36氪经授权发...

osc_13sujivn
3分钟前
11
0
ATFX安全知识:被骗和亏损严重怎么追回

郎中治病需要对症下药,才能做到药到病除。而投资者账户资金亏损惨重也需要分清是因为被骗还是由于交易操作失利导致。如果亏损后一厢情愿以为被骗了或者认吃亏都是无法帮助挽回损失的。ATFX小...

osc_696ni6tr
4分钟前
8
0
现在哪款视频转换器比较好用?

这个问题大家可问对人了,今天英子会介绍一款实用的视频转换器软件——迅捷视频转换器(提供视频优化、视频转GIF、视频配乐、视频压缩、视频截图、视频水印、视频转换等九大功能)。它已经躺...

真不莲
5分钟前
5
0
如何利用小程序提高实体店销量?

实体店销售难,这是一个事实,尤其是在2020年的疫情中,我们更是注意到实体店的压力颇大。面对淘汰的风险,商家的求生欲告诉自己要不断改革。小程序似乎是实体店的突破口,生存与否就看这个应用...

osc_3s78f0to
5分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部