扫码关注官方订阅号
epoll_wait超时的话说明没有事件发生不是又要继续循环 epoll_wait吗?这样设置超时有啥用
光阴似箭催人老,日月如移越少年。
谢邀,虽然已经过了很久了,但还是来回答一下
使用epoll_wait的目的一般是利用wait超时的间隙执行一些定时事件,比如定时检测客户连接的活动状态。
epoll_wait
服务器程序通常会管理很多定时事件,因此有效地组织这些定时事件,使之能在预期的时间点被触发且不影响服务器的主要 逻辑,对于服务器的性能有着至关重要的影响。Linux系统中提供了三种定时方法:
socket 选项 SO_ RCVTIMEO 和 SO_ SNDTIMEO
SO_ RCVTIMEO
SO_ SNDTIMEO
SIGALRM信号
I/O复用系统调用的超时参数
而epoll_wait就是第三种的一个用法。
参考 <<Linux高性能服务器编程>>
有一种思路是利用超时来触发定时任务
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
谢邀,虽然已经过了很久了,但还是来回答一下
使用
epoll_wait
的目的一般是利用wait超时的间隙执行一些定时事件,比如定时检测客户连接的活动状态。服务器程序通常会管理很多定时事件,因此有效地组织这些定时事件,使之能在预期的时间点被触发且不影响服务器的主要 逻辑,对于服务器的性能有着至关重要的影响。Linux系统中提供了三种定时方法:
socket 选项
SO_ RCVTIMEO
和SO_ SNDTIMEO
SIGALRM信号
I/O复用系统调用的超时参数
而
epoll_wait
就是第三种的一个用法。参考 <<Linux高性能服务器编程>>
有一种思路是利用超时来触发定时任务