我有一个包含三个线程的 Java 应用程序,每个线程打开一个套接字并连接到不同端口上的服务器。
建立与服务器的连接后,我在每个套接字上设置了 so_timeout 。
之后线程会阻塞等待 read()。
只有一个线程在 20 秒后超时(这是我设置的超时)。
另外两个忽略超时。
TCP 层是否有可能一次只处理一个超时?
还有其他解释吗?
The 文档 says:
该选项必须在进入阻止操作之前启用才能生效。
也许你应该设置它before至少在调用套接字上的 read() 之前,已建立与服务器的连接。
但没有代码很难说...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)