DijiuWeng 2022-09-23 11:17 采纳率: 0%
浏览 24

客户端之间如何通过服务器进通讯?(借助tcp+socket)

问题:我现在已经大致明白socket和tcp协议之间的关系,也大致明白了客户端和服务端建立连接的过程,但是还是不清楚客户端和客户端之间怎么通信?
比如说以聊天软件举例,AB两个用户向服务端发送连接请求,连接建立后,A—server和B—server各有一个socket(各有一个四元组),建立了tcp连接,但是AB之间怎么进行通信?服务器怎么知道A要给B发消息;又怎么把A要发给B的消息传给B
(说的可能有点绕,但已经尽力想把自己的问题表述清楚)

  • 写回答

3条回答 默认 最新

  • 这里不提提纳里 2022-09-23 11:30
    关注

    一般都是cs架构,对于多人聊天需要用到多线程,服务器端保存一个字典,里边存有每一个链接到服务器sokcet,每一个sokcet对应一个线程,例如a发给b信息,先发到服务器端,服务器根据标识送给b,这样就产生了私聊。

    具体看一下我写的聊天室程序吧,地址

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 9月23日

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 易优eyoucms关于二级栏目调用的问题
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题