求教,客户端连接服务端时,是为每个客户端都保留一个线程好还是每次有请求时开一个再释放比较好。

2康xx 2013-05-06 10:59:28
表达能力不是太好请多包涵

一种情况是: 客户端第一次登录之后服务器就为这个客户端开一个线程,一直到客户端退出才释放线程。

另一种是: 每次客户端访问服务器的时候服务器创建一个线程, 结束之后马上释放。

请问这两种有什么优缺点, 适用的情况有什么不同吗?
...全文
344 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
2康xx 2013-05-06
  • 打赏
  • 举报
回复
引用 1 楼 wumn29 的回复:
一种情况是: 客户端第一次登录之后服务器就为这个客户端开一个线程,一直到客户端退出才释放线程。---长连接,即使没有数据交互服务器也要维护这个连接, 使用场景:客户端与服务器的交互比较频繁, 优点:避免了频繁的建立和关闭连接 另一种是: 每次客户端访问服务器的时候服务器创建一个线程, 结束之后马上释放。 ---短连接, 完成相应的请求任务立马断开连接,使用场景, 客户端与服务器交互简短且不频繁, 优点, 降低服务器的开销
感谢,刚才也问了一下老师,给的回复也是这个意思。
wumn29 2013-05-06
  • 打赏
  • 举报
回复
一种情况是: 客户端第一次登录之后服务器就为这个客户端开一个线程,一直到客户端退出才释放线程。---长连接,即使没有数据交互服务器也要维护这个连接, 使用场景:客户端与服务器的交互比较频繁, 优点:避免了频繁的建立和关闭连接 另一种是: 每次客户端访问服务器的时候服务器创建一个线程, 结束之后马上释放。 ---短连接, 完成相应的请求任务立马断开连接,使用场景, 客户端与服务器交互简短且不频繁, 优点, 降低服务器的开销

18,356

社区成员

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

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