社区
C++ Builder
帖子详情
聊天室服务器是怎样实现私下交谈的
koyl
2000-05-11 04:52:00
我在一个服务器程序的开发中,需将连接到服务器的客户,分成不同的组(组内客户数目不等),各组内进行不同的工作(如通过服务器转发数据)。有点类似于聊天室服务器要管理公开,私下交谈等。
是否要为每一个组创建一个线程和一个socket,这样如果线程创建的太多,管理起来很麻烦。
winsock2中有多点通信,不知有否帮助。
在C++ Builder中有没有控件可解决此问题。
我的程序实时性要求较高。
请各问赐教。谢谢
...全文
122
2
打赏
收藏
聊天室服务器是怎样实现私下交谈的
我在一个服务器程序的开发中,需将连接到服务器的客户,分成不同的组(组内客户数目不等),各组内进行不同的工作(如通过服务器转发数据)。有点类似于聊天室服务器要管理公开,私下交谈等。 是否要为每一个组创建一个线程和一个socket,这样如果线程创建的太多,管理起来很麻烦。 winsock2中有多点通信,不知有否帮助。 在C++ Builder中有没有控件可解决此问题。 我的程序实时性要求较高。 请各问赐教。谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yuanyingtanxi
2000-05-30
打赏
举报
回复
同意alexela的说法,在ClientRead事件中加入一个函数,参数包括发送方的Socket和目地方的Socket,然后在函数里判断是否是目地方,如下
vodi form1::mitan(AnsiString Message,TCustomWinSocket *SSocket,TCustomWinSocket *TSocket)
{
for (int i,i<ServerSocket1->Socket->ActiveConnections;i++)
{
if (ServerSocket1->Socket->Connections[i]=TSokcet)
ServerSocket1->Socket->Connections[i]->SendText(Message);
}
}
大致是这样,你试试看
alexela
2000-05-29
打赏
举报
回复
你在READCLIENT事件中加入代码,用全局变量指针指向读取的每个SOCKET 客户值(可用TSrings的DATA属性挂接用以标明客户的字符串和SOCKET 客户值)。利用TCOMBOBOX即可实现连接所要通讯的用户,再用服务程序传送数据,即可实现私下交谈。
还可以定义你自己的数据格式,分组管理(连接方法同上)。实现“房间”的功能,同时也为了减少服务程序的数据发送负担。提高速度。
如果你的程序要求实时性,我建议你用并发式服务,否则,用重复式服务要好一些(省力)。
若还有问题,请联系:alexela_2000@sina.com
nodejs_chat:用node.js和socket.io编写的在线
聊天室
关于 基于一个聊天程序和WebSocket的- 。 安装和部署 将源代码下载到计算机上的Windows,Linux或Mac文件夹中。 确保您的计算机上已安装Node.js,并在控制台上运行以下命令: npm i node server.js 那么您应该可以通过以下访问它: 讯息定义 客户端->
服务器
refreshRooms-更新房间列表 加入-更衣室 nameAttempt-更改昵称 消息{房间,文本}-发送消息
服务器
->客户端 rooms-刷新房间列表,并将消息区域滚动到底部 joinResult {room}-返回房间更改结果 nameResult {成功,[名称|消息]}-返回昵称更改结果 消息{文本}-向指定房间广播用户或系统消息 去做 在房间列表中突出显示当前房间,使其不可单击 列出当前会议室中的所有用户,并可以单击以
私下
交谈
,而我的名字位于列表顶部,并
基于JavaWeb
聊天室
设计与
实现
WEB
聊天室
面向因特网开放,是提供给众多用户的一个开发的娱乐平台,借助
聊天室
用户完全可以自己主动选择聊天的对象,创造
私下
交流的机会,从而建立众多用户之间相互交流、传递情感的绿色通道。主要的功能有:查看当前的在线用户、多人参与的会话聊天、悄悄话聊天,以及修改用户密码、修改用户个人资料、更换所在聊天房间,并提供多种表情动作选项。(7)用户初始为普通权限,只有在积分超过1000分时才拥有高级权限即成为高级用户,高级用户有权利维护
聊天室
的正常环境秩序,将不遵守
聊天室
公共秩序的用户踢出禁言。
网页设计与制作常考概念以及问答题
协议:事先约定或定义的一组精确地规定所交换数据的格式和传输方法的规则,即计算机在交换信息时都要遵守的表达方式。主要包括用户数据与控制信息的结构和格式。需要发出的控制信息以及相应要完成的操作与响应、对事件
实现
顺序的详细说明等三部分内容。标记型网页制作工具:是指创建的网页文件在编辑过程中只能看到页面的源代码,而需要转到浏览器中才能够看到页面的效果。要求用户对HTML的使用方法非常熟悉才能够做出希望要的...
IceWarp V11.4 新版本之 TeamChat 企业协作通讯工具(一)
欢迎来到爱思华宝 TeamChat! TeamChat 是一个全新的团队 & 项目协作工具 在一个熟悉的界面为用户带来了大量重要的协作功能 包括:多用户聊天、文件共享、会议和视频通话、 用户能够邀请任何人进入私人或公共会议室围绕一个主题、 一个项目、一个团队或者任何问题进行对话。 以下是一些简单介绍,帮助你快速了解 TeamC
「MOSS - 20」MOSS队:Alpha阶段总结和反思
答疑信息集中在微信聊天记录中,高度序列化,并且答疑信息相对不公开的问题。学生出于各种原因不愿意实名提问。微信答疑打扰辅导师,无法集中安排时间答疑。辅导师激励机制较弱。活动组织者难以统计辅导师的工作量,不方便发布志愿时长。整理的课程资料鲜为人知,需要有力的平台推广。活动组织者对答疑活动情况没有合适的了解渠道。我们定义得很清楚,我们从三类用户的视角,分点列举了软件需要解决的问题,问题彼此之间已相对比较独立。在规格功能说明书中提出的主要功能都已在alpha阶段
实现
。
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章