关闭

[置顶] epoll的ET和LT模式下,accept,recv,send写法

epoll有两种事件模型: Level Triggered (LT) 水平触发 socket接收缓冲区不为空,有数据可读,读事件一直触发 socket发送缓冲区不满,可以继续写入数据,写事件一直触发 Edge Triggered (ET) 边缘触发 socket的接收缓冲区状态变化时触发读事件,即空的接收缓冲区刚接收到数据时触发读事件 socket的发送缓冲区状态变化时触发写事件,即满的...
阅读(212) 评论(0)

[置顶] libevent多线程使用bufferevent的那些事

void do_accept(struct evconnlistener *listener, evutil_socket_t fd, struct sockaddr *sa, int socklen, void *ctx) { //不使用Nagle算法,选择立即发送数据而不是等待产生更多的数据然后再一次发送 int optval = 1; setsockopt(fd, SO...
阅读(1714) 评论(2)

recv和send的完整写法

struct evbuffer* input = evbuffer_new();//数据缓冲 void read_data() { char buffer[1024] = { '\0' }; int ret = recv(fd, buffer, 1024, 0); //从接收缓冲取数据成功 if (ret > 0) { evbuffer_add...
阅读(598) 评论(0)

libevent使用event事件触发服务端实例

struct event_base* m_base = event_base_new(); if (NULL == m_base) { return 1; }首先是创建base,后面的event都是基于base,关联到base才能进入循环。struct sockaddr_in server_addr; server_addr.sin_family = AF_INET; server_addr...
阅读(163) 评论(0)

libevent学习网站

http://www.monkey.org/~provos/libevent/doxygen-2.0.1/files.html...
阅读(117) 评论(0)
    个人资料
    • 访问:28162次
    • 积分:770
    • 等级:
    • 排名:千里之外
    • 原创:45篇
    • 转载:0篇
    • 译文:0篇
    • 评论:30条
    联系方式

    公司:深信服科技股份有限公司


    所在地:中国-广东省-深圳市


    QQ交流群:165650716


    文章分类