【发布时间】:2015-06-04 12:39:12
【问题描述】:
我有一个使用 BeginConnect 连接本地服务器的 unity3d 客户端,但无法随机建立连接,尤其是在我重新启动统一编辑器后。连接好后,即使我多次重启游戏(不是编辑器)也会变得很正常。
wireshark 显示问题发生时没有发送任何内容。
我有另一个非常相似的客户端,但它可以非常完美地连接到我的另一个相似的本地服务器。
知道是什么导致了这个问题吗?
提前致谢。
===
PS。
- 即使使用重试机制,客户端也可以成功连接到服务器,但后面的异步操作(
BeginSend&BeginReceive)可能仍然会随机停止工作。 - 即使我在未运行服务器的情况下运行客户端,连接也可能无响应。
-
我有代码可以在
OnApplicationQuit()函数中关闭套接字:socket.Shutdown(SocketShutdown.Both); socket.Close(); - 另一个类似的客户端具有几乎相同的代码库,但运行良好。
- 我发现了另一个类似的问题:http://answers.unity3d.com/questions/925955/socketbeginwrite-no-response-in-463f1.html?sort=oldest。但它无法解释为什么我的另一个客户(相同版本的统一)工作。
【问题讨论】: