当前位置: 技术问答>linux和unix
Accept() 返回0,请问是怎么回事 ?
来源: 互联网 发布时间:2016-01-20
本文导语: 在linux 端运行server,listen在20000端口,Windows端connect()可以,发送数据也发送成功了,但linux端的server有时会Accept()返回0,这时windows端发送的数据就收不到了,为什么Accept()会返回 0? | ...
在linux 端运行server,listen在20000端口,Windows端connect()可以,发送数据也发送成功了,但linux端的server有时会Accept()返回0,这时windows端发送的数据就收不到了,为什么Accept()会返回 0?
|
some socket resource not run close() ?
|
printf ( "%sn" , strerror(errno) );
看看输出什么。
看看输出什么。
|
accept 是可以返回0的(用man accept看),如果你的Server关闭了标准输入(也就是0),accept 就可能返回0。关键是程序里对返回0的处理正确吗?
|
accept在一般情况不能返回0