socket用完释放问题,救急

tianlehui 2013-07-10 02:57:38
以前没用过socket,现在局域网内有个通讯,使用了socket,功能实现了,有几个问题求教:

现状:一台服务器端有客服人员使用,一台客户端终端客户使用。客户端多个功能界面,进入每个界面都与服务器端socket通讯,退出界面时向服务器端报送退出消息。

问题:
1、客户端每次界面退出时我都发送一条固定消息通知服务器端,然后socket.close()一下,有必要close吗?说是系统会自动释放2分钟内没动作的socket,不晓得具体咋样。
2、客户、服务器通讯过程中意外中断,只能重新new socket进行重连?
...全文
467 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
读取完数据stream.close()就行,资源还是及时清除比较好,除非你的是长连接,那么使用异步读就行。
  • 打赏
  • 举报
回复
1.有必要不要相信自动的事,2.判断中断后重新连接时必须的
Benjay77 2013-07-11
  • 打赏
  • 举报
回复
手动释放吧 可以写一个监听
klarkzby 2013-07-10
  • 打赏
  • 举报
回复
来学经验 之前写的服务端(只允许1vs1) 即使客户端close 但是服务端仍旧对绑定的端口发送
  • 打赏
  • 举报
回复
引用 楼主 tianlehui 的回复:
1、客户端每次界面退出时我都发送一条固定消息通知服务器端,然后socket.close()一下,有必要close吗?说是系统会自动释放2分钟内没动作的socket,不晓得具体咋样。 2、客户、服务器通讯过程中意外中断,只能重新new socket进行重连?
1. 没听说过“2分钟释放”这种事情。 2. 意外中断了,而你又要重连,当然就重连啦。如果不重连,那么就通知用户“关闭系统”吧。这是业务问题,跟技术不沾边。
屌絲來襲 2013-07-10
  • 打赏
  • 举报
回复
close只是關閉,dispose才是銷毀
Regan-lin 2013-07-10
  • 打赏
  • 举报
回复
引用 2 楼 kkun_3yue3 的回复:
//2)可以不new但一定需要重连 补充说明,可以不new的意思是说你的socket对象还存在,只是连接断开了,可以不new如果已经Dispose了那么直接new新的即可
+1
kkun_3yue3 2013-07-10
  • 打赏
  • 举报
回复
//2)可以不new但一定需要重连 补充说明,可以不new的意思是说你的socket对象还存在,只是连接断开了,可以不new如果已经Dispose了那么直接new新的即可
kkun_3yue3 2013-07-10
  • 打赏
  • 举报
回复
1),建议手动释放 2),可以不new但一定需要重连

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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