程序有多个聊天室,每个聊天室都有若干人。
该怎么设计,若一个客户端开一个线程接收,那就要开几千上万个线程,另外100个聊天室,是监听100个端口好,还是监听1个就够呢

解决方案 »

  1.   


    什么意思?线程负责处理一次Receive消息,怎么可能是“一个客户端开一个线程”?应对几千个客户端,只要占用几十个(甚至只有十几个)线程通常就足够了。
      

  2.   

    不知道csdn又抽羊角风,丢了一楼。告诉lz一个常识,线程是处理消息receive的,而不是用来“阻塞、挂起客户端会话”的。因此应付5000个用户,往往只要几十个甚至十几个线程就足够了。如果你认为每一个客户端对应一个线程,我猜你是从某些培训机构的网站上下载了不靠谱的“X大XX学校QQ项目”之类的范例程序。因为我确实看到有些学校是从博客上抄来一些比较浅显的范例来做课程视频的。