Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何检测断开以通过tcpclient完成数据发送_C#_Networking_Tcpclient - Fatal编程技术网

C# 如何检测断开以通过tcpclient完成数据发送

C# 如何检测断开以通过tcpclient完成数据发送,c#,networking,tcpclient,C#,Networking,Tcpclient,我需要用这个代码通过tcpclient发送一个错误列表 private bool TryConn(out TcpClient cliente) { var client = new TcpClient(); try { client.Connect(IpAddress, PortNumber); cliente = client; return true; } catch { clie

我需要用这个代码通过tcpclient发送一个错误列表

private bool TryConn(out TcpClient cliente)
{
    var client = new TcpClient();
    try
    {
        client.Connect(IpAddress, PortNumber);
        cliente = client;
        return true;
    }
    catch
    {
        cliente = null;
        return false; 
    }

}
public void ProcesssRecovery()
{
    //NonMassiveErrorerror= new NonMassiveError();
    TcpClient client;
    //get error
    IEnumerable<NonMassiveError> errorNotNotified = GetUncheckedNonMassiveError();

    //check if lista is not empty 
    if (errorNotNotified .Count() >0 )
    {
        // check connection
        if (TryConn(out client))
        {
            foreach (NonMassiveError error in errorNotNotified )
            {       // sending error<--how detect conn stops
                SendMessage(error, client, "asin" , "");
                error.Save();
            }

        }

    }
        //stop thread 10mins
    else
    {
        Thread.Sleep(TimeSpan.FromMinutes(10)); 
    }           
}
}


如何检查foreach中的连接是否中断以停止发送数据

您应该稍等片刻,然后读取对发送的数据的响应。
如果服务器确认,则为okResponse=0,如果不停止发送。

您应该稍等片刻,然后读取对所发送数据的响应。 如果服务器确认,那么它是okResponse=0,如果不停止发送。

SendMessage是您自己的方法,对吗?检查socket.Send是否返回0字节。这意味着套接字已断开连接。

SendMessage是您自己的方法,对吗?检查socket.Send是否返回0字节。这意味着插座断开了