pselect 函数

2014-12-05 17:06:28   最后更新: 2014-12-05 17:06:28   访问数量:681




pselect 函数是 POSIX 发明,很多系统支持该函数

int pselect (int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, const struct timespec *timeout, const sigset_t *sigmask);

 

定义于 sys/select.h 中

timespec 结构定义于 time.h 中

sigset_t 类型定义于 signal.h 中

 

若有就绪描述符则返回描述符数目,超时返回0,否则返回-1

pselect 相对于 select 函数有以下两个变化

1、时间结构

pselect 和 select 函数都有标识超时的参数,但是 pselect 使用的是 POSIX 创造的 timespec 结构

struct timespec { time_t tv_sec; long tv_nsec; }

 

将超时时间精确到纳秒

2、信号掩码

pselect 函数增加了第六个参数,指向信号掩码的指针,可以在函数运行的同时禁止系统递交某些信号

 






读书笔记      技术帖      network      unix网络编程      网络编程      龙潭书斋      io      select      pselect     


京ICP备15018585号