0

我想知道 WCF 服务的故障模式的行为。

假设托管服务的服务器已关闭,那么我用来连接服务的通道将处于故障模式?

以下是我的观察:

  • 服务已启动并运行,所有服务调用均成功。
  • 现在服务器已关闭,频道显示它已打开,因此它将调用最终超时的服务,我处置频道
  • 对于下一次服务呼叫,它将创建新通道,因为我在上次呼叫中已将其处理。

问题:这是预期的场景还是通道应该显示它在第一次调用时处于故障状态。

请指导。

4

1 回答 1

1

根据 TCP 的设计,通常不可能查看服务器或客户端是否失去连接。所以你必须打电话才能看到。(非正常方式是发送一个空的 TCP 包,但通常不被任何操作系统支持。)

如果您将regualry 称为特殊的nop(无操作)功能,您可以更快地看到它。

如果您的呼叫由于连接超时而失败(如果对方离线,则每次都会发生这种情况),那么您的通道就会出现故障。

于 2012-06-05T17:14:52.350 回答