簡體   English   中英

C#中的多客戶端服務器

[英]Multi client server in C#

我正在用C#.Net在服務器和客戶端之間編寫聊天程序。 除了聊天,兩個用戶都可以參與不同的活動,例如遠程桌面和一起玩游戲。

我有幾個問題:

  1. 多個線程將同時從客戶端發送和接收內容,這意味着每個選項都需要確定哪個數據包適合他並從中獲取數據? (在同時傳輸文件的同時運行遠程桌面,遠程桌面線程將看到文件包到達流中,但應該忽略它,對吧?)

  2. 為我將接受客戶端的套接字設置好的緩沖區大小是多少?

  3. 我是否以包含數據的專業類的形式進行通信,還是嘗試將通信保持為通過流發送的字節數組?

我們無法回答問題2和3,因為我們不知道溝通和要求是什么樣子。

至於處理多個線程:這很難解決,我會使用現有的解決方案。

我建議您看一下0MQ,因為它可能會阻止您重新發明輪子。

有可用的.NET客戶端庫: http ://nzmq.codeplex.com/和nuget包http://www.nuget.org/packages/clrzmq/2.2.5

The Guide是一個好的開始

有關快速示例,請參見此C#服務器及其在C#中的hello world客戶端

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM