超时或尝试捕获连接到服务器?(c# WinForms)

本文关键字:服务器 WinForms 连接 超时 | 更新日期: 2023-09-27 18:09:49

哪种代码更适合处理连接失败的服务器?

像这样:

或者在TcpClient.BeginConnect的异步回调开始的代码:

try
{
    tcpClient.EndConnect(async);
}
catch
{
    System.Windows.Forms.MessageBox.Show("uh oh");
    return;
}

感谢阅读

超时或尝试捕获连接到服务器?(c# WinForms)

当您的上下文正在处理连接超时时,我假设您的意思是您在一定时间内尚未收到来自请求的响应。

EndConnect封装在try块中并捕获抛出的任何异常并不一定构成超时发生。目前没有内置的支持处理超时与TcpClient。你的第一个链接是如何检测和处理连接超时的一个很好的例子。

这篇文章也可能对您有所帮助:使用异步客户端套接字