讨论:输入输出流中使用过后是否需要释放资源?

mac342 2005-02-28 01:28:33
经常看到一些代码,包括书上的一些关于输入输出流方面的代码,总感觉在释放资源方面,没什么规律可循,有的类释放了资源,有的类又没有释放,大家讨论下,输入输出流中是否也要像数据库连接一样,用完资源就释放,还是只需对特定的输入输出类释放资源,还是由垃圾回收器自己管理呢?
顶者有分~!
...全文
190 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
maweihua 2005-02-28
  • 打赏
  • 举报
回复
一定要释放,垃圾回收慢
awaysrain 2005-02-28
  • 打赏
  • 举报
回复
还是手工释放比较好
liaoxingya276 2005-02-28
  • 打赏
  • 举报
回复
我记得tij上好像说最新版本的jdk的垃圾回收器为了提高效率只是在内存不够用的情况下才启动垃圾回收的
mac342 2005-02-28
  • 打赏
  • 举报
回复
但我在看JAVA编程思想时,发现他也没有对所有用过的stream类执行close操作,而只是将用过的OutputStream执行了close操作~~
liaoxingya276 2005-02-28
  • 打赏
  • 举报
回复
自己释放当然好,但就是感觉写出的代码复杂些,而且不知到底有没有必要由自己管理资源的释放,要是由垃圾回收器自行回收的话,会不会造成资源未释放的问题呢?
-------------------------------------------------------------
应该碰到有的应用程序死了强制结束后造成其读写的文档无法打开的情况把。我认为手工释放资源非常必要。
liaoxingya276 2005-02-28
  • 打赏
  • 举报
回复
应该释放!
在finally中或重写finalize()方法释放
mac342 2005-02-28
  • 打赏
  • 举报
回复
自己释放当然好,但就是感觉写出的代码复杂些,而且不知到底有没有必要由自己管理资源的释放,要是由垃圾回收器自行回收的话,会不会造成资源未释放的问题呢?
shinexp 2005-02-28
  • 打赏
  • 举报
回复
用过的资源释放出来比较好。
quickpoint 2005-02-28
  • 打赏
  • 举报
回复
我感觉应该释放
try
{

}
catch( )
{

}
finally
{
**Stream = null;
}
healer_kx 2005-02-28
  • 打赏
  • 举报
回复
请问怎么释放?
zqhsd 2005-02-28
  • 打赏
  • 举报
回复
个人认为,用完了就要释放,感觉还是自己管理资源释放的好~

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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