假设以下事件序列: 在启用了 keep-alive 的 POSIX TCP 套接字上执行 read(),但没有可用的数据。 keep-alive 机制判断连接已断开。 假如忽略了 SIGPIPE ,那么 read() 会返回吗?
close()
一个套接字并不会导致另一个线程上的select()
或poll()
返回 -- 所以套接字并不总是表现得像它们“应该”那样。 - Steve Emmersonselect()
应该返回-1/EBADF,否则就会阻塞直到在打开的套接字上发生了某些事情,...所以你知道了 :-| - user207421