[英]How to find which TcpClient had send a message in C#
我創建了一個系統,將一系列 TcpClient 連接到 TcpListener 並在類似聊天的系統中交換數據。 建立連接后,服務器將客戶端添加到列表中,並開始讀取流等待消息。
服務器收到消息后,是否有內置方法可以知道是哪個客戶端發送的?
替代方案:我想把客戶端的RemoteEndPoint(Ip+端口)附加到消息上來作為一個標識符,在客戶端和服務器端兩個版本的TcpClient應該是一樣的,並且相對於另一個是唯一的客戶。 我對嗎?
服務器收到消息后,是否有內置方法可以知道是哪個客戶端發送的?
有什么可以添加的; 通常,您會在每個Socket
/ TcpClient
/ TcpListener
/ NetworkStream
/ Pipe
(您選擇的 API)實例旁邊維護一些名義上的每個連接狀態,以便在接收消息時您可以輕松查找您需要的任何內容。 在某些情況下,僅使用Socket
/ TcpClient
/ etc 實例作為鍵可能就足夠了,但更多情況下,您將擁有某種用戶狀態/上下文信息。 這基本上完全取決於您來實施。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.