【发布时间】:2021-08-22 10:52:33
【问题描述】:
在shutdown vs close的基础上知道了shutdown和close的区别。
但是如果在socket中选择超时,客户端将关闭或关闭(sock,SHUT_WR)。
我尝试阅读select.c的源代码,但是太难阅读了。
谁能帮帮我。
【问题讨论】:
-
两者都不是。如果
select()超时,则套接字上完全发生了两者。除非您担心不活动超时,否则没有理由关闭或关闭它。
在shutdown vs close的基础上知道了shutdown和close的区别。
但是如果在socket中选择超时,客户端将关闭或关闭(sock,SHUT_WR)。
我尝试阅读select.c的源代码,但是太难阅读了。
谁能帮帮我。
【问题讨论】:
select() 超时,则套接字上完全发生了两者。除非您担心不活动超时,否则没有理由关闭或关闭它。
但是如果在socket中选择超时,客户端将关闭或关闭(sock,SHUT_WR)。
如果客户端调用了select(),客户端可以决定当调用超时时该怎么做。
几乎按照定义,如果您的 select() 超时,它会告诉您 没有 发生在套接字上(无论如何,您告诉 select() 您感兴趣的都没有)。
套接字不会因为一段时间内没有发生任何事情而自动关闭(或关闭)。如果你愿意,你必须自己做。
【讨论】: