在C#中,可以使用Socket类来进行Socket连接。如果连接超时,可以通过设置Socket的ConnectTimeout属性来实现。

下面是一个示例代码:

using System;
using System.Net;
using System.Net.Sockets;

class Program
{
    static void Main(string[] args)
    {
        // 创建Socket对象
        Socket clientSocket = new Socket(SocketType.Stream, ProtocolType.Tcp);

        // 设置连接超时时间为5秒
        clientSocket.ConnectTimeout = 5000;

        // 创建连接的IP地址和端口号
        IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
        IPEndPoint remoteEP = new IPEndPoint(ipAddress, 8080);

        try
        {
            // 连接服务器
            clientSocket.Connect(remoteEP);

            // 连接成功
            Console.WriteLine("连接成功");
        }
        catch (SocketException ex)
        {
            // 连接超时
            if (ex.SocketErrorCode == SocketError.TimedOut)
            {
                Console.WriteLine("连接超时");
            }
            else
            {
                Console.WriteLine("连接失败:" + ex.Message);
            }
        }
        finally
        {
            // 关闭Socket连接
            clientSocket.Close();
        }
    }
}

在上述代码中,首先创建一个Socket对象,并设置连接超时时间为5秒。然后创建要连接的服务器的IP地址和端口号。接下来,使用Connect方法来连接服务器。如果连接超时,将会抛出SocketException异常,可以通过检查SocketErrorCode来判断是否是连接超时。最后,无论连接成功还是失败,都要关闭Socket连接。

C#Socket连接超时

原文地址: https://www.cveoy.top/t/topic/jfXv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录