客户/服务器模型C#

时间:2011-03-28 04:40:16

标签: c# client-server

我编写了一个示例客户端和服务器。服务器在客户端连接,发送请求然后断开连接时继续监听。当客户端连接到服务器时,在发送请求之前,我有一个场景,强制关闭服务器或以任何方式关闭服务器。我的问题是如何处理这个问题?除非通知其连接的客户端,否则我是否可以阻止服务器断开连接?我可以写这样的方法吗?怎么样?

编辑:服务器和客户端我指的是我自己编写的服务器和客户端应用程序 感谢

3 个答案:

答案 0 :(得分:2)

请澄清你的情况。

  

服务器

表示您的服务器应用程序或物理服务器本身?如果服务器意味着o / s本身,那么除了执行彻底的软件和硬件故障排除之外,你无能为力。

更新:

好的,如果这是您的应用程序问题,那么您可以尝试在代码中实现Try..Catch语句,并了解更多内容。

关键在于,您必须首先防止异常,而不是在发生异常时寻求解决方案。

由于您可以控制服务器和客户端应用程序,因此可以使用comet方法监视服务器应用程序状态,即服务器仍在运行或已关闭。

有关彗星方法概念的更多信息,请点击链接:http://www.codeproject.com/KB/aspnet/CometAsync.aspx

答案 1 :(得分:0)

不幸的简短回答:没有。很多事情都会强制性地意外关闭服务器 - 无论是网络错误,系统管理员还是全州电源故障。

您可以做的最好的事情是确保您的客户端能够处理突然断开服务器的连接。

答案 2 :(得分:0)

如果强行关闭服务器,我认为你无能为力。您可以做的最好的事情是确保客户端检查以确保服务器在发送任何命令之前仍处于运行状态。这至少可以防止客户端崩溃。

如果您的客户端始终连接并且能够从服务器接收命令,那么如果服务器以有序的方式关闭,则无法阻止您向客户端发送某种命令。