
C#异常您的主机中的软件终止了一个连接,怎么解决。
{try{byte[]hb={0,0,0,46,10};socket.Send(hb);byte[]datas=newbyte[2048];intnRead=socket...
{
try
{
byte[] hb = { 0, 0, 0, 46, 10 };
socket.Send(hb);
byte[] datas = new byte[2048];
int nRead = socket.Receive(datas);
if (nRead == 0)
{
sendTimer.Change(-1, 0);
sendTimer.Dispose();
sendTimer = null;
socket.Close();
socket = null;
inl = 0;
//Login();
return;
}
else
{
Hbint = Hbint + 1;
lastMsg = "第" + Hbint.ToString() + "次心跳完成";
}
}
catch (Exception ex)
{
lastMsg = ex.ToString();
socket.Close();
socket = null;
inl = 0;
sendTimer.Change(-1, 0);
sendTimer.Dispose();
sendTimer = null;
//Login();
}
这是我的心跳数据包 20秒发一次,但是如果服务器断开了我连接我这里也不知道有什么检测代码,然后如果服务器中断了我的连接 我这里再发送就会异常,怎么处理异常?然后再重新登录
(Login)软件就掉了 不知道什么情况。 展开
try
{
byte[] hb = { 0, 0, 0, 46, 10 };
socket.Send(hb);
byte[] datas = new byte[2048];
int nRead = socket.Receive(datas);
if (nRead == 0)
{
sendTimer.Change(-1, 0);
sendTimer.Dispose();
sendTimer = null;
socket.Close();
socket = null;
inl = 0;
//Login();
return;
}
else
{
Hbint = Hbint + 1;
lastMsg = "第" + Hbint.ToString() + "次心跳完成";
}
}
catch (Exception ex)
{
lastMsg = ex.ToString();
socket.Close();
socket = null;
inl = 0;
sendTimer.Change(-1, 0);
sendTimer.Dispose();
sendTimer = null;
//Login();
}
这是我的心跳数据包 20秒发一次,但是如果服务器断开了我连接我这里也不知道有什么检测代码,然后如果服务器中断了我的连接 我这里再发送就会异常,怎么处理异常?然后再重新登录
(Login)软件就掉了 不知道什么情况。 展开
若以下回答无法解决问题,邀请你更新回答
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询