如何使用 TcpListener 和 TcpClient 创建双工连接?
我遇到了需要并行发送和接收信息的情况。
我的协议可以定义读取端口和写入端口。
我当前有以下代码:
public void Listen()
{
ThreadPool.SetMinThreads(50, 50);
listener.Start();
while (true)
{
var context = new ListeningContext(listener.AcceptTcpClient(), WritePort);
}
}
如何从我传递的 TcpClient 创建另一个侦听器?
I have a situation where I need to send and receive information parallelly.
My protocol can define a read port and a write port.
I currently have the following code:
public void Listen()
{
ThreadPool.SetMinThreads(50, 50);
listener.Start();
while (true)
{
var context = new ListeningContext(listener.AcceptTcpClient(), WritePort);
}
}
How can I create another listener from the TcpClient I am passing?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
TcpClient
对象包装NetworkStream
对象。您可以使用TcpClient
的GetStream()
方法访问NetworkStream
对象,然后使用该对象从网络读取数据或向网络写入数据。NetworkStream
< 的 MSDN 文章/a> 表示以下内容:使用
TcpListener
对象侦听传入连接。使用从调用AcceptTcpClient()
返回的TcpClient
对象与远程端点进行通信(读取和写入)。A
TcpClient
object wraps aNetworkStream
object. You use theGetStream()
method ofTcpClient
to access theNetworkStream
object, which is then used to read data from and write data to the network. The MSDN article forNetworkStream
says the following:Use the
TcpListener
object to listen for incoming connections. Use theTcpClient
object returned from the call toAcceptTcpClient()
to communicate (read and write) with the remote endpoint.TCP 连接是全双工管道,请查看此处。您不需要单独的端口或其他任何东西。
TCP connection is a full-duplex pipe, take a look here. You don't need a separate port or anything else.