在C#中,當你使用TcpClient
類的Connect()
方法連接到遠程服務器時,可以通過設置TcpClient.ReceiveTimeout
和TcpClient.SendTimeout
屬性來指定超時時間。以下是一個示例:
using System;
using System.Net.Sockets;
using System.Threading;
class Program
{
static void Main()
{
string server = "example.com";
int port = 80;
using (TcpClient client = new TcpClient())
{
try
{
// 設置連接超時時間(毫秒)
client.ConnectTimeout = 5000;
// 嘗試連接到遠程服務器
client.Connect(server, port);
Console.WriteLine("已連接到服務器");
// 設置接收超時時間(毫秒)
client.ReceiveTimeout = 10000;
// 設置發送超時時間(毫秒)
client.SendTimeout = 10000;
// 在這里執行你的網絡操作...
}
catch (SocketException ex)
{
Console.WriteLine("連接失敗: " + ex.Message);
}
finally
{
// 關閉客戶端
client.Close();
}
}
}
}
在這個示例中,我們將連接超時時間設置為5秒(5000毫秒),接收超時時間設置為10秒(10000毫秒),發送超時時間也設置為10秒(10000毫秒)。如果在這些時間內無法完成連接或數據傳輸操作,將會引發一個異常。