libevent使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了libevent使用相关的知识,希望对你有一定的参考价值。
开始研究libevent,使用的版本是2.0.22。
实现一个定时器:每2秒执行一次printf。
#include <stdio.h> #include <stdlib.h> #include <event2/event.h> #include <event2/event_struct.h> #include <time.h> void timeout_cb(int fd, short event, void *arg) { printf("run timeout_cb\n"); struct event *timeout = (struct event*)arg; struct timeval tv; tv.tv_sec = 2; tv.tv_usec = 0; // 重新添加定时事件(定时事件触发后默认自动删除) event_add(timeout, &tv); } int main(int argc, char **argv) { struct event_base *base = event_base_new(); struct event timeout; struct timeval tv; tv.tv_sec = 2; tv.tv_usec = 0; event_assign(&timeout, base, -1, 0, timeout_cb, (void*) &timeout); event_add(&timeout, &tv); event_base_dispatch(base); }
参考资料:
libevent简介和使用
以上是关于libevent使用的主要内容,如果未能解决你的问题,请参考以下文章
一起读读libevent的源代码:Libevent 第一章 设置libevent