社区
C#
帖子详情
程序已退出,端口被占用,奇怪。
cglandy
2011-09-08 05:23:33
我的Socket服务端程序,退出后,端口还在.
再打开那程序,就提示端口被占用了。
用netstat -ano看了。 pid 5908
taskkill /pid 5908 /f
提示找不到这个进程。我打开任务管理器,也看不到这个pid进程。
...全文
354
15
打赏
收藏
程序已退出,端口被占用,奇怪。
我的Socket服务端程序,退出后,端口还在. 再打开那程序,就提示端口被占用了。 用netstat -ano看了。 pid 5908 taskkill /pid 5908 /f 提示找不到这个进程。我打开任务管理器,也看不到这个pid进程。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Zhen (Evan) Wang
2011-09-13
打赏
举报
回复
mark下,最近也在搞Socket编程,嘿嘿
Anyhasgone
2011-09-13
打赏
举报
回复
c#不是托管语言吗 怎么还用程序员自己释放资源?
cglandy
2011-09-13
打赏
举报
回复
五天了,端口还在用着,PID找不到,服务器又不能老是重启。唉
cglandy
2011-09-09
打赏
举报
回复
求解。
cglandy
2011-09-09
打赏
举报
回复
这个程序,开了两个线程,一个是Tcp的,一个是Udp的
TCP我DisConnect,Udp我把线程abort了。
不管是什么原因造成端口还在占用,我想,把这个PID结束掉。
[Quote=引用 10 楼 sp1234 的回复:]
谁知道你怎样编程的呢?
如果你确保有dispose和析构函数,可以正常close,那么即使服务临时垮掉,1~2秒钟重新启动,也是可以重新监听的!
[/Quote]
以专业开发人员为伍
2011-09-08
打赏
举报
回复
谁知道你怎样编程的呢?
如果你确保有dispose和析构函数,可以正常close,那么即使服务临时垮掉,1~2秒钟重新启动,也是可以重新监听的!
cglandy
2011-09-08
打赏
举报
回复
在线等呢。各位。
cglandy
2011-09-08
打赏
举报
回复
很久很久了,从多提问到现在,那个端口还在用着。[Quote=引用 5 楼 icedmilk 的回复:]
进程没了,线程怎么可能在。
原因在于
在TCP连接断开时,主动断开的一方在发送最后一个ACK后,就进入了TIME_WAIT状态,这个状态一般持续2MSL的时间。(MSL是max segment lifetime的缩写,2MSL一般为2分钟)
这个事儿与进程在不再没有关系,端口是系统维护的。
等待的这段时间是对可靠传输有利的
具体请看http://blog.csdn.net/i……
[/Quote]
beckfun
2011-09-08
打赏
举报
回复
5楼强大...
下班前顶个先...
Icedmilk
2011-09-08
打赏
举报
回复
进程没了,线程怎么可能在。
原因在于
在TCP连接断开时,主动断开的一方在发送最后一个ACK后,就进入了TIME_WAIT状态,这个状态一般持续2MSL的时间。(MSL是max segment lifetime的缩写,2MSL一般为2分钟)
这个事儿与进程在不再没有关系,端口是系统维护的。
等待的这段时间是对可靠传输有利的
具体请看
http://blog.csdn.net/icedmilk/article/details/5337591
likytkyt
2011-09-08
打赏
举报
回复
socket 所占的资源没有释放,在关闭程序记得调用socket.close清理资源
成成
2011-09-08
打赏
举报
回复
关了线程也会有一段时间存在占用的吧
老毕
2011-09-08
打赏
举报
回复
即使是线程,也分前台线程和后台线程。对于前台线程,即使你Main()所在线程结束,它也可能继续在执行,直到结束。
估计你还有前台线程没结束掉。
isjoe
2011-09-08
打赏
举报
回复
线程没有退出
CCNA_CCNP 思科网络认证 PAT NAT 端口或地址转换 与端
复用是最流行的NAT配置类型,也被称为端口地址映射(PAT)。 通过使用PAT,可实现上千个用户仅通过一个真实的全球 IP地址连接到Internet。 ...
Linux查看端口使用状态、关闭端口及配置端口方法 详细
Linux 端口信息查看 大家都知道,端口不是独立存在的,它是依附于进程的。某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了。下次若某个进程再次开启,则相应的端口也再次开启。而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端口。 1. 查看端口 【Command】 netstat -anp 注:加参数'-n'会将应用
程序
转为端口显示,即数字格式...
使用boost库,无法释放udp端口的问题
在使用boost的socket封装库的时候,遇见一个
奇怪
的问题,就是关闭boost的udp socket,但是 udp的端口一直没有释放,这是一个很严重的问题,因为对于服务器来讲,由于一直运行,端口没释放会导致端口越来越少吗,最后没端口用 代码如下 trans_redirect_socket->close(); trans_redirect_socket->shutdown(...
TCL中用exec启动的进程占用SOCKET端口问题分析
有一个集成TCL解释器的
程序
(就叫TT吧)执行带exec的脚本启动一个进程(PP),TT本身创建了SOCKET端口与其它
程序
进行通信。这时关闭TT,PP还在运行,使用netstat查看端口号,发现TT创建的端口号仍然存在,并且不能再创建此端口号。说明端口未关闭,可是TT已经
退出
了,很
奇怪
。于是查看exec的实现,发现是使用CreateProcess来创建进程的,它的第五个参数是设置继承句柄
记一次抓包发现的tcp监听端口被重用的
奇怪
现象及一些其他
2019独角兽企业重金招聘Python工程师标准>>> ...
C#
110,535
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章