【发布时间】:2010-10-10 01:25:08
【问题描述】:
有没有办法从服务器端检查 RPC 连接的状态?我正在寻找一种方法来检测来自客户端的连接是否丢失,无论是客户端崩溃还是其他连接问题。
【问题讨论】:
有没有办法从服务器端检查 RPC 连接的状态?我正在寻找一种方法来检测来自客户端的连接是否丢失,无论是客户端崩溃还是其他连接问题。
【问题讨论】:
莫弗拉纳根的回答是最好的恕我直言。更多上下文。
如果您使用绑定句柄,则无法跨 RPC 调用跟踪状态,并且“客户端断开连接”的概念基本上没有意义 - 您仍然需要从 RPC 调用返回。
如果您使用上下文句柄,则 RPC 运行时库将在客户端断开连接时调用 _rundown 函数。
当调用该例程时,服务器可以清理它需要的任何东西。
【讨论】:
使用Context Handles 管理特定客户端调用之间的服务器状态。 RPC 使用 keep-alive 来检测客户端断开连接,并在客户端断开连接时执行您的上下文句柄破例例程。
【讨论】: