阅读量:0
在C#中,使用TcpClient
类可以实现TCP客户端的功能
using System; using System.Net; using System.Net.Sockets; class Program { static void Main(string[] args) { try { // 创建一个TcpClient实例 TcpClient tcpClient = new TcpClient(); // 设置连接超时时间(单位:毫秒) int timeout = 5000; // 异步连接服务器 IAsyncResult result = tcpClient.BeginConnect("127.0.0.1", 8080, null, null); // 等待连接成功或超时 bool success = result.AsyncWaitHandle.WaitOne(timeout); if (success) { Console.WriteLine("连接成功"); // 结束异步连接 tcpClient.EndConnect(result); // 这里可以添加与服务器通信的代码 // 关闭TcpClient tcpClient.Close(); } else { Console.WriteLine("连接超时"); // 取消连接 tcpClient.Close(); } } catch (Exception ex) { Console.WriteLine("发生异常: " + ex.Message); } } }
在这个示例中,我们首先创建了一个TcpClient
实例。然后,我们使用BeginConnect
方法异步连接到服务器。接下来,我们使用AsyncWaitHandle.WaitOne
方法等待连接成功或超时。如果连接成功,我们调用EndConnect
方法结束异步连接,并继续与服务器通信。如果连接超时,我们关闭TcpClient
实例并取消连接。