zoukankan      html  css  js  c++  java
  • libevent::事件

    /*****************************************************************
    函数功能: 创建事件集
    *****************************************************************/
    struct event_base *event_base_new(void)
    /************************************************************************
    函数功能: 创建事件
    输入参数: struct event_base       -- 事件所在的事件集。        
    输出参数: evutil_socket_t         --socket的描述符。 
    输出参数: short                 --事件类型,其中EV_READ表示等待读事件发生,
                                    --EV_WRITE表示写事件发生,或者它俩的组合,
                                    --EV_SIGNAL表示需要等待事件的号码,
                                    --如果不包含上述的标志,就是超时事件或者手动激活的事件。  
    输出参数: event_callback_fn    --回调函数。  
    输出参数: void*                --回调函数的参数值。
    返回值  :
    说明    :
    ************************************************************************/
    struct event event_new(struct event_base ,evutil_socket_t ,short ,event_callback_fn,void*)
    /**********************************************************************
    函数功能: 添加事件
    输入参数: struct event *  需要添加的事件
    输入参数: struct timeval* 事件的最大等待事件,如果是NULL的话,就是永久等待
    ***********************************************************************/
    int event_add(struct event * ev,const struct timeval* timeout)
    /**********************************************************************
    函数功能: 需要删除的事件
    输入参数: struct event *  需要删除的事件
    ***********************************************************************/
    int event_del(struct event *)
    /**********************************************************************
    函数功能: 分配监听事件
    输入参数: struct event_base *  需要监视的事件集
    ***********************************************************************/
    int event_base_dispatch(struct event_base * )
    /**********************************************************************
    函数功能:I/O buffer事件
    输入参数:struct event_base *  需要添加到的时间集
    输入参数:相关的文件描述符
    输入参数:0或者是相应的BEV_OPT_*可选标志
    ***********************************************************************/
    struct bufferevent* bufferevent_socket_new (struct event_base * base, evutil_socket_t fd, int options)
    /**********************************************************************
    函数功能:I/O buffer事件
    输入参数:struct bufferevent * bev  需要启用的bufferevent
    输入参数:short event                any combination of EV|READ | EV_WRITE
    ***********************************************************************/
    int bufferevent_enable(struct bufferevent * bev,short event)
    int bufferevent_disable(struct bufferevent * bev,short event)
    /**********************************************************************
    函数功能:
    输入参数:struct bufferevent bev     读取的buffer_event事件
    输入参数:void data                    存储数据的指针
    输入参数:size_t size                数据buffer的大小
    返回  值:读取数据的字节数
    ***********************************************************************/
    size_t bufferevent_read(struct bufferevent bev,void data,size_t size)
    
    /**********************************************************************
    函数功能:
    输入参数:struct bufferevent bev     读取的buffer_event事件
    输入参数:void data                    存储数据的指针
    输入参数:size_t size                数据buffer的大小
    返回  值:要写入的数据的大小,字节数
    ***********************************************************************/
    int bufferevent_write(struct bufferevent bev,const void data,size_t size)
  • 相关阅读:
    Python全栈-第四课 学习笔记
    Python全栈-第三课 学习笔记
    Python全栈-第二课 学习笔记
    计算机网络技术-交换基础和Vlan间路由 学习笔记
    Linux运维-04系统管理和操作命令
    Linux运维-03远程连接
    Linux运维-02操作系统和系统安装(虚拟机)
    Linux运维-01硬件组成概念介绍
    计算机网络技术-路由-OSPF 学习笔记
    python基础 day17 模拟博客园登录
  • 原文地址:https://www.cnblogs.com/osbreak/p/10269728.html
Copyright © 2011-2022 走看看