从另一个线程关闭套接字时,阻塞recv不会退出吗?
在Linux中,如果我们recv
从一个线程调用阻塞并从另一个线程关闭同一个套接字,recv
则不会退出。
为什么?
回答:
检查是否已关闭套接字的所有文件描述符。如果在“远程”端有任何打开的端口(假设这是您尝试关闭的端口),则“
对等方尚未执行有序的关闭 ”。
如果仍然不起作用,请shutdown(sock,
SHUT_RDWR)在远端调用,无论引用计数如何,都将关闭套接字。
以上是 从另一个线程关闭套接字时,阻塞recv不会退出吗? 的全部内容, 来源链接: utcz.com/qa/407954.html