TCP允许一方发出“FIN”,并让另一方在结束连接之前回复一些数据。
如何使用.NET的TcpClient
来实现这一目标?我似乎必须使用Close
来发送FIN,但之后我再也无法调用Client.Receive
,因为Client
被null
设置为Close
。
答案 0 :(得分:2)
发出输出关闭。这会发送FIN并阻止你写任何其他内容,但它会打开另一半连接。
答案 1 :(得分:0)
在.NET中执行此操作的方法是调用
Socket.Shutdown(SocketShutdown.Send);
或者,如果您使用的是TcpClient
:
TcpClient.Client.Shutdown(SocketShutdown.Send);