让我们说我正在关注客户端 - 服务器模型,以及一个客户端,它实际上是一个线程,阻塞在远程服务器上,实际上是一个监视器。
如果服务器由于某种原因崩溃,该线程会发生什么?
答案 0 :(得分:1)
答案是:取决于:
在这里发挥作用的事情:
换句话说:没有人可以告诉您您的客户端应用程序将要执行的操作。因为我们没有关于您正在处理的实现和配置详细信息的任何信息。
或者,更改观点:您应确保您的客户使用某种形式的超时。如上所述,这可以通过在用于通信的sockets上设置超时来完成。或者通过另一个线程来监视与服务器通信的所有线程;并且为了防止这些线程永远等待而在某个时刻开始。
长话短说:如果你认真对待这些问题;你必须做很多研究;一个好的起点将是旧经典"释放它"作者Michael Nygard。