c - 远程套接字上 select() 的行为已关闭(通过终止进程)

标签 c linux sockets select

两个进程正在通过套接字进行通信 - 进程 A 和进程 B。

进程 B 正在使用 select() 调用来检查套接字何时准备好进行 I/O。

进程A突然被杀死。 B 侧 socket 会发生什么情况。 B 端套接字是否会自动检测到 A 的套接字不再可用,并且 select() 将返回 -1 并带有 EABDF。或者 select() 调用将永远保持阻塞状态。

最佳答案

选择将解锁,并且将返回错误情况或读取情况。

关于c - 远程套接字上 select() 的行为已关闭(通过终止进程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17990689/

相关文章:

c - 对 sqlite_open 的 undefined reference

linux - 在写入 txt 文件之前编辑 netcat 输出

python - 在 RTSP 设置后接收 RTP 数据包

perl - 如何检测套接字连接何时丢失?

c - 以下 C 程序的行为是否未定义?

错误计算行数和运算符的 C 程序

c - 在 C 中反序列化文本文件数据(链表)

linux - 如何测试是否存在两个文件?

linux - `sed` 有效,但 `sed -i` 返回错误

python - 通过 TCP 套接字 python 发送一个字节