Detectar la pérdida de la conexión RPC del lado del servidor en Windows
Pregunta
¿Hay alguna manera de comprobar el estado de la conexión RPC desde el lado del servidor? Busco una manera de detectar si se pierde la conexión desde el cliente, ya sea accidente cliente u otros problemas de conectividad.
Solución
Contexto Maneja para la gestión del servidor estado entre las llamadas para un cliente en particular. RPC utiliza keep-alive para detectar de cliente se desconecta y se ejecutará el contexto manejar rutina resumen, si el cliente se desconecta.
Otros consejos
La respuesta de Mo Flanagan es el mejor en mi humilde opinión. Un poco más de contexto.
Si está utilizando identificadores de enlace, no hay forma de seguimiento de estado a través de las llamadas RPC y el concepto de una "desconexión de un cliente" está esencialmente sin sentido -. Usted todavía tiene que volver de la llamada RPC
Si está utilizando maneja contexto, a continuación, la biblioteca de tiempo de ejecución de RPC llamará a la función _rundown cuando el cliente se desconecta.
Cuando la rutina se llama, el servidor puede limpiar todo lo que necesita.