epoll_pwait
- 接口定义
int epoll_pwait(int epfd,struct epoll_event *events,int maxevents,int timeout,const sigset_t *_Nullable sigmask)
- 接口描述
等待epoll实例上的I/O事件,与epoll_wait()相比增加了sigmask参数,可在等待期间安全地替换信号掩码。
- 接口约束
- epfd必须为有效epoll描述符。
- maxevents必须大于0。
- timeout为-1表示无限阻塞,0表示立即返回。
- events缓冲区需足够容纳maxevents个结构。
- 参数说明
表1 参数说明 输入参数
输入/输出
范围
数据类型
含义
版本
“epfd”
I
>=0
int
epoll实例的描述符
1.0.0
“events”
O
valid buf
struct epoll_event*
返回就绪事件列表的输出缓冲区
1.0.0
“maxevents”
I
>0
int
events数组能容纳的最大事件个数
1.0.0
“timeout”
I
-1,0,>0
int
等待超时(毫秒):-1:无限等待;0:立即返回
1.0.0
“sigmask”
I
NULL or sigset ptr
sigset_t
等待期间临时替换的信号掩码
1.0.0
- 接口返回值
表2 接口返回值 返回码
返回值
描述
HLC_ERR
“-1”
失败,并设置errno
READY_EVENT_NUM
“>=0”
成功,返回就绪事件的数量
父主题: 对外接口