epoll边沿模式

epoll边沿模式下,客户端发送数据后,只读取了部分数据,当下一次客户端数据到达时,是否会触发,如果不触发,怎样使这个连接可以再次可以被触发,必须读取完缓冲区的所有数据吗?
全部评论
不会再触发,需要再次读完
点赞 回复 分享
发布于 2019-04-16 22:33
除非这个连接再次有数据进来或者说状态发生改变,才会再次调用callback函数告知epoll进行处理。所以通常情况下,边缘触发尽可能保证每次将数据读完在结束~
点赞 回复 分享
发布于 2019-04-16 19:20
数据到达时就会触发,并且只触发一次。也就是说如果不读完,就只能等待下一次客服端有数据过来,触发可读事件,这个连接描述符才会被epoll返回
点赞 回复 分享
发布于 2019-04-16 19:04
要读到不能读为止
点赞 回复 分享
发布于 2019-04-16 18:16
ET模式下,来新数据才会触发,没读完的数据堆积缓冲区。
点赞 回复 分享
发布于 2019-04-16 18:15

相关推荐

04-06 11:24
已编辑
太原学院 C++
真烦好烦真烦:感觉不太对劲,这种主动加微信的一般都是坑,要小心辨别
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
6
分享

创作者周榜

更多
牛客网
牛客企业服务