在C#中,TcpListener
类用于创建一个TCP服务器,它可以监听来自TCP客户端的连接请求。通过TcpListener
,你可以创建以下类型的连接:
- 流式连接(Stream-based connections):使用
TcpListener
时,默认情况下,它会处理基于流的连接。这意味着客户端和服务器之间的数据交换是通过流进行的,可以发送和接收字节流。这种连接类型适用于需要传输大量数据或需要实时数据传输的场景。
示例代码:
TcpListener listener = new TcpListener(IPAddress.Any, port); listener.Start(); while (true) { TcpClient client = listener.AcceptTcpClient(); NetworkStream stream = client.GetStream(); // 处理数据流 }
- 数据报连接(Datagram connections):虽然
TcpListener
本身不支持直接创建数据报连接,但你可以通过使用UdpClient
类来实现类似的功能。UdpClient
类用于处理无连接的UDP数据报通信,适用于需要快速传输少量数据或实时性要求较高的场景。
示例代码:
UdpClient udpClient = new UdpClient(port); while (true) { IPEndPoint endpoint = new IPEndPoint(IPAddress.Any, port); byte[] bytesReceived = udpClient.Receive(ref endpoint); // 处理接收到的数据 }
总之,TcpListener
主要用于创建基于流的TCP连接,而UdpClient
则用于创建基于数据报的UDP连接。