C#中的TcpClient连接尝试

时间:2013-09-12 14:25:37

标签: c#

我有一个简单的程序。我想检查服务器是否真的在线,这样我的用户可以在做之前连接到它,所以在表单加载事件中我有以下内容:

 private void frmMain_Load(object sender, EventArgs e)
    {
        try
        {
            tcp.Connect("110.174.194.138", 8484);
            MessageBox.Show("siccces");
        }
        catch
        {
            MessageBox.Show("failed");
        }
        if (tcp.Connected)
        {
            //do whatever once program has connected.
        }
        else
        {
            MessageBox.Show("FAILED");
        }
    }

当服务器在线(并且可以连接)时,一切正常。它在0.1秒内连接并且没有任何不好的事情发生。但是,当服务器关闭时,它会尝试重新连接约5次,这需要15秒。如何才能尝试连接一次,以便我可以立即显示失败的消息?

感谢。

1 个答案:

答案 0 :(得分:0)

tcp课程中,您需要修改代码,以便在给定时间段后超时。您必须测试连接以查看它是否在给定的时间段内启动,如果不是,则必须处理结果。有多种方法可以执行此操作,因此只需在Google上搜索您正在使用的套接字方法的超时。