Pergunta

Eu tenho um aplicativo que usa HttpListener, eu preciso saber quando o cliente desconectado, agora eu tenho todo o meu código dentro de um bloco try / catch que é muito feio e não é uma boa prática.

Como posso saber se um cliente desconectado?

Obrigado!

Foi útil?

Solução

Resposta curta: você não pode. Se um cliente pára de falar, o soquete subjacente pode ficar aberto e nunca vai perto; Só vai timeout. A maneira de detectar essa é a tentativa de executar uma ação em que conexão e se a conexão não é mais válido, ele vai jogar algum tipo de exceção, dependendo do que aconteceu. Se você usa HttpListener de forma assíncrona, pode limpar o seu código um pouco em termos de um try / catch, mas infelizmente isso é o que você está preso com. Não há evento que irá disparar, se o cliente se desconecta.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top