2016-01-18 1 views
0

Il semble vraiment étrange que je n'arrive pas à trouver une réponse à cette question. Lorsque vous essayez d'utiliser un TcpListener dans une application C# windows forms, je peux définir des délais d'attente sur l'objet Serveur d'un TcpListener, mais que dois-je faire lorsqu'un délai d'attente se produit? Comment est-ce que je reconnais que c'est arrivé? Dans la programmation de socket de bas niveau en Python, je peux spécifier un gestionnaire d'événement timeout, mais je ne vois pas comment le faire en C#.Que faire après l'expiration de TcpListener?

Répondre

2

La valeur SendTimeout est seule utilisée lors de l'utilisation du Send synchrone. Lorsque le délai d'attente est atteint, Send va lancer un SocketException - c'est ainsi que vous savez que le Send a échoué.

En pratique, vous ne devriez vraiment rien faire avec l'objet winsocket sous-jacent - tout ce dont vous avez besoin dans presque tous les cas, ce sont les méthodes et propriétés exposées par TcpListener et eux-mêmes.

+0

Merci beaucoup d'avoir pris le temps de répondre. –