开发者社区 问答 正文

Linux 网络编程 epoll中的EPOLLIN EPOLLOUT如何触发

代码很长只截取关键部分
//服务器端
screenshot
screenshot
screenshot
screenshot

以上是服务器端的主程序 思路是epoll_wait接收到连接就为连接创建一个users存储然后等待后续的操作 但后面EPOLLIN 和EPOLLOUT永远都没法触发 不清楚该怎么触发 另一端写了服务器压力测试程序 和以上代码类似 就是循环创建socket对象然后connect()服务器 但我本意想两端互相发送数据 可connect()后服务器收到创建一个user 继续循环等待 但压力测试程序也在创建完对象后陷入循环等待服务器端的操作 请问该如何触发EPOLLIN和EPOLLOUT信号
以下是压力测试程序关键代码

展开
收起
杨冬芳 2016-07-13 16:59:05 3110 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • EPOLLERR通常是自己这一侧做出了一些动作才会触发。 例如 读或者写一个已经关闭掉的fd 这时候才会触发EPOLLERR。 我是这样理解的,err的意思就是说自己做了一些不该做的事情,所以被认为是错误

    答案来源于网络

    2019-09-20 16:20:26 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等