c#如何实现多个客户端的通信(同一个服务器)

 我来答
百度网友c62a14344
2010-06-18 · TA获得超过832个赞
知道小有建树答主
回答量:317
采纳率:0%
帮助的人:336万
展开全部
客户端之间的通讯有两个办法。
1. 服务器中转
2. 服务器上注册后,客户端之间直接通信。

对于第一种方法,大多比较简单。查一下socket的文章,还有大把现成的代码给你看。

第二个方法就稍微复杂一些。
但原理都一样。客户端A,链接服务器后,地址信息就保存到了服务器上。除了保持与服务器的通信外。另外开启一个 Socket,绑定到另一个端口,并且一直监听此端口。
客户端B连接服务器,从服务器上获取客户端A的地址信息。把客户端A当成服务器,连接A。
pppop3
2010-06-18 · TA获得超过316个赞
知道小有建树答主
回答量:488
采纳率:0%
帮助的人:351万
展开全部
建立多个线程就ok了 为每一个连接 创建一个线程去处理
while (true)
{
// 得到包含客户端信息的套接字
Socket client = server.Accept();

//创建消息服务线程对象
ClientThread newclient = new ClientThread(client);

//把ClientThread 类的ClientService方法委托给线程
Thread newthread = new Thread(new ThreadStart(newclient.ClientService));

// 启动消息服务线程
newthread.Start();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jnc911
2010-06-18 · TA获得超过192个赞
知道小有建树答主
回答量:160
采纳率:0%
帮助的人:0
展开全部
单纯的多线程是不可能实现的 要用到socket
你到msdn或者网上一搜 结果一大堆 特别是msdn里讲的相当详细
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式