有没有办法从服务器端检查RPC连接的状态?我正在寻找一种方法来检测来自客户端的连接是否丢失,无论是客户端崩溃还是其他连接问题。
答案 0 :(得分:4)
使用Context Handles管理特定客户端的呼叫之间的服务器状态。 RPC使用keep-alive来检测客户端断开连接,并在客户端断开连接时执行上下文句柄断开例程。
答案 1 :(得分:1)
如果您正在使用绑定句柄,则无法跨RPC调用跟踪状态,并且“客户端断开连接”的概念基本上没有意义 - 您仍需要从RPC调用返回。
如果您正在使用上下文句柄,那么当客户端断开连接时,RPC运行时库将调用_rundown函数。
当调用该例程时,服务器可以清理它需要的任何内容。