![]() |
1
8
当您接受连接时,将创建一个新套接字。旧的仍然用于监听将来的连接。
与在accept之后立即关闭新的accepted套接字相比,您所寻找的是否存在净差异?当客户端尝试使用其套接字时(或者如果它已经在服务器上等待读取调用,则立即使用),最后一个错误是:服务器主动关闭连接。 |
![]() |
2
4
别这样
|
![]() |
3
4
您可以在接受第一个连接后关闭正在侦听连接的原始套接字。我不知道您使用的套接字类是否允许您这样做。 |
![]() |
4
3
|
![]() |
5
1
我认为应该是监听插座被关闭。 之后就不能再建立连接了。
|
![]() |
6
0
如果可以控制客户端,则可以使套接字不阻塞。在这种情况下,它们将返回错误消息
我仍然在寻找如何将套接字更改为非阻塞。如果有人知道如何即兴回答,请随意编辑答案。 |
![]() |
7
0
|
![]() |
8
0
您可能有套接字选项
TCP_DEFER_ACCEPT (since Linux 2.4) Allows a listener to be awakened only when data arrives on the socket. Takes an integer value (seconds), this can bound the maximum number of attempts TCP will make to complete the connection. This option should not be used in code intended to be portable.
我假设这会导致您描述的效果,即连接客户端不会阻塞
|
![]() |
mig21 bis · 带套接字的SSL_set_fd地址边界错误 3 年前 |
![]() |
hollow · 在读写C中的套接字时,为什么要使用循环缓冲区? 3 年前 |
![]() |
Filipe · 通过http python发送图像 6 年前 |
|
Mr. Rogers · epoll_wait事件的epoll顺序 6 年前 |
![]() |
Michael Beer · 查找插座的传输类型 6 年前 |