libevent简单的入门

1.1 libevent简介

Libevent 是一个用C语言编写的、轻量级的开源高性能网络库。具有以下特点:

  • 事件驱动( event-driven)
  • 高性能
  • 轻量级
  • 专注于网络
  • 源代码相当精炼、易读
  • 跨平台,支持多种 I/O 多路复用技术,
  • 支持 I/O,定时器和信号等事件
  • 注册事件优先级

1.2 libevent安装

1)下载libevent源码,即从libevent官网下载(http://libevent.org/)。

2)解压

     #tar -zxvf libevent-2.1.8-stable.tar.gz

图1

3)进入libevent源码目录,配置:

    #cd libevent-2.1.8-stable
    #./configure --prefix=/usr

4)编译并安装

    # make && make install

图2

1.3 libevent简单使用

libevent简单定时器:

#include<iostream>
#include<event.h>

using namespace std;

static char data[1024] = "Hello libevent";
struct event ev;
struct timeval tv;
void Fun(int fd,short n,void *a)
{
    evtimer_del(&ev);
    evtimer_add(&ev,&tv);
    cout<<(char*)a<<endl;
}
int main(void)
{
    event_init();
    evtimer_set(&ev,Fun,data);
    tv.tv_sec =1;
    tv.tv_usec =0;
    evtimer_add(&ev,&tv);
    event_dispatch();
    return 0;
}

效果如下图:
图1

关于libevent源码,初次学习,仍需要多练习,多研究,多总结,多敲代码。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Lulixiao/article/details/79969078
个人分类: libevent源码学习
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭