用了CASYNCSOCKET,还要用多线程吗?

rolaniloveyou 2009-03-10 12:43:14
我想做个聊天室。支持多用户的,用了CASYNCSOCKET类,它有自己的消息处理虚函数,是不是不须要再用多线程了?
如果是这样的话。那服务器就这一个主线程了,会影响效率吗。谁能帮忙分析一下啊?
...全文
180 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnzdgs 2009-03-10
  • 打赏
  • 举报
回复
根据具体情况而定,简单情况不需要多线程。
cnzdgs 2009-03-10
  • 打赏
  • 举报
回复
一个线程可以管理多个socket,如果每个socket一个线程就失去CAsyncSocket的意义了。
对于上百个用户,如果数据流量较小,可以用单线程CAsyncSocket,如果还有其它数据处理可以另开线程;对于较大的数据流量,应该考虑其它方式,例如IOCP等。
rolaniloveyou 2009-03-10
  • 打赏
  • 举报
回复
请问怎么用?我知道直接用那个API好像是每个用户接收和发送各建一个线程?
那CASYNCSOCKET自己已有消息处理函数。是为每个用户建一个线程吗。。。。。。
如果是UI线程
线程在RUN函数中大概怎么写那?
rolaniloveyou 2009-03-10
  • 打赏
  • 举报
回复
请问你们,服务端用CASYNCSOCKET + 单线程 , 跟用API + 多线程,大概上百个用户,谁效率更高一些????
stavck 2009-03-10
  • 打赏
  • 举报
回复
同意楼上
Kudeet 2009-03-10
  • 打赏
  • 举报
回复
简单不需要,如果用多线程最好不要用CASYNCSOCKET类,自己用SOCKET API跟安全,CASYNCSOCKET不是线程安全的
lygfqy 2009-03-10
  • 打赏
  • 举报
回复
最好用多线程,否则在处理协议上要花费很多别的设计
friend_880 2009-03-10
  • 打赏
  • 举报
回复
不用多线程
Joan201401 2009-03-10
  • 打赏
  • 举报
回复
一对一不用
一对多的话可以考虑多线程

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧