当前位置: 技术问答>linux和unix
请教高人来解释一下小弟关于poll()函数的疑惑
来源: 互联网 发布时间:2016-07-17
本文导语: 请问可读和可写事件具体的讲,在什么条件下会触发?我知道socket有数据到来时会触发可读事件,我想要更具体的解释。 结合实际来讲,我用poll检测了一个本地文件的fd,我可以收到可读和可写事件,这如何解释?...
请问可读和可写事件具体的讲,在什么条件下会触发?我知道socket有数据到来时会触发可读事件,我想要更具体的解释。
结合实际来讲,我用poll检测了一个本地文件的fd,我可以收到可读和可写事件,这如何解释?不过read返回值是-1
还有一个程序poll检测一个socket,总是能够收到可读事件,但是read返回值总是0,如何解释?
可读和可写事件的本质是什么?
结合实际来讲,我用poll检测了一个本地文件的fd,我可以收到可读和可写事件,这如何解释?不过read返回值是-1
还有一个程序poll检测一个socket,总是能够收到可读事件,但是read返回值总是0,如何解释?
可读和可写事件的本质是什么?
|
应该是“下一次IO操作不会阻塞或是EWOULDBLOCK时,则返回”
那个read返回-1,是不阻塞,而且error估计也是IO错误,所以应该返回,表示可读可写或是出错。
还有一个程序poll检测一个socket,总是能够收到可读事件,但是read返回值总是0,如何解释?
这个我没见过,发下代码看看吧。
那个read返回-1,是不阻塞,而且error估计也是IO错误,所以应该返回,表示可读可写或是出错。
还有一个程序poll检测一个socket,总是能够收到可读事件,但是read返回值总是0,如何解释?
这个我没见过,发下代码看看吧。