异步套接字连接,客户端断开连接时服务器GUI挂起(没响应)?

时间:2014-02-05 07:33:35

标签: c# sockets

我正在根据this指南对服务器和客户端进行编码。我的服务器不断向客户端发送一些数据。

除了一个客户端由于意外问题(通常是LAN电缆断开连接或断电)而断开连接时,服务器GUI挂起(没有响应)几秒钟,一切都很好。然后套接字异常在几秒钟后抛出。对于坐在服务器计算机上的人来说,这并不舒服。 如果客户端正常断开连接,不会因断电而导致挂起问题。 原因是什么?如何摆脱那种悬挂?

1 个答案:

答案 0 :(得分:0)

为插座,连接等使用单独的线程。 当任务需要时间时,UI线程应该保持独立。

如果对线程感到不舒服,那么您可以在代码中使用Application.DoEvents()方法。虽然我不建议使用它。