使用setsockopt()和select()来设置UDP超时

时间:2015-10-29 18:07:15

标签: select udp timeout setsockopt

我知道这两个都可以用来设置recvfrom()的超时,但哪一个更好?直观地说,setsockopt看起来很简单,但我发现许多例子都使用了select()。我只使用一个套接字,并在传输时重新计算超时(我使用的是Ubuntu)。

1 个答案:

答案 0 :(得分:0)

这取决于您希望使用它的确切要求/方案。

通常,select允许您同时监视多个套接字。如果您的设计有多个套接字,则首选使用select。但是,如果您只有一个套接字,则使用setsockopt的超时(SO_RCVTIMEO)选项是更好的选择。