c#socket异步连接后怎样判断连接是否成功
1个回答
展开全部
//这是例子,你参考参考
private int connToServer(string hostip, int hostport,int ctimeout)
{
IPEndPoint remoteEp = new IPEndPoint(IPAddress.Parse(hostip),hostport); try
{
connDone.Reset();
//开始连接
cliSock.BeginConnect(remoteEp, new AsyncCallback(connCallBack), cliSock); connDone.WaitOne(ctimeout, false);
if (!cliSock.Connected)
{ //连接超时
return CONNTIMEOUT; }
//连接成功
return 0; }
catch (SocketException ex)
{ //连接失败
cliSock.Close();
return CONNTIMEOUT;
}
catch (Exception ex)
{ //连接失败
cliSock.Close();
return CONNTIMEOUT;
}
}
private void connCallBack(IAsyncResult ar)
{
Socket s = (Socket)ar.AsyncState;
try
{
s.EndConnect(ar);
isConnected = s.Connected;
}
catch (Exception ex)
{
isConnected = false;
//发生错误
return;
}
finally
{
connDone.Set();
}
}
大雅新科技有限公司
2024-11-19 广告
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询