Estoy usando ZeroMQ de .NET y me atasqué tratando de solucionar un problema extraño. Tengo un socket de tipo PUSH y uno de tipo PULL sobre TCP. Cuando el cliente se desconecta, el servidor aún puede enviar un mensaje (tenga en cuenta que no se pasan indicadores al método Socket.Send) que obtiene mucho antes de comenzar a bloquearse y esperar a que el cliente se vuelva a conectar y entregue los mensajes que intento para enviar después.ZeroMQ PUSH/PULL y mensaje perdido
¿Cómo puedo evitar perder el mensaje (o en el peor de los casos, probar si un cliente está conectado y si no envía un mensaje falso que puedo permitir perder)?
¡Gracias de antemano!
Edit: pruebas adicionales revelan que si espero 1 segundo después de enviar el primer mensaje después de la desconexión por el cliente, el segundo bloqueará, pero si no espero en absoluto puedo enviar tantos mensajes como Quiero y todos se perderán. Eso es bastante confuso ...