首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

调用exit(零)后一些未关闭的socket会被关闭或超时么

2012-09-25 
调用exit(0)后一些未关闭的socket会被关闭或超时么?因为要调用别人的一个组件,但是那个组件有问题,反编译

调用exit(0)后一些未关闭的socket会被关闭或超时么?
因为要调用别人的一个组件,但是那个组件有问题,反编译那个组件发现它会创建一个连接,来接收服务器发送来的数据,那个组件有个循环会不断的等待服务端的数据,当网络出问题时,那个循环也没有退出,导致整个系统被他拖死。组件是别人的不太好改,所以准备写一个线程监控这个如果常时间未退出就exit(0)退出整个进程。但是担心如果调用exit(0)会不会导致一些未关闭的socket一直占用端口?windows会自动关闭这些端口么?

[解决办法]
使用完要释放资源是必须的,操作系统替你关闭的时候那就已经出错了。
[解决办法]
端口会不会关闭你每次exit后用netstat -a 看一下,一般程序及时循环也会有catch在里面处理socket.close等的。
[解决办法]
socket.close
[解决办法]
不会 exit(0)方法java虚拟机已经退出了..

热点排行
Bad Request.