Topic: 问个关于垃圾回收的问题。

  Print this page

1.问个关于垃圾回收的问题。 Copy to clipboard
Posted by: Dollyn
Posted on: 2006-07-16 03:20

最近在想这样一个问题:
在进行文件读写,网络操作,数据库操作的时候,往往需要对一些对象执行
close()方法。
但是java中是自动进行垃圾回收的,那么当一个对象被回收的时候,它的资源应该也是被释放了的,那么执行close()方法的必要性何在呢?请高手指点。

2.Re:问个关于垃圾回收的问题。 [Re: Dollyn] Copy to clipboard
Posted by: 烂泥
Posted on: 2006-07-16 10:25

要求被执行Close方法的对象,大多数是依赖第三方资源,这些资源在VM之外.理解 ?

3.Re:问个关于垃圾回收的问题。 [Re: Dollyn] Copy to clipboard
Posted by: Dollyn
Posted on: 2006-07-16 19:00

还不是很明白。。
那么什么样的资源是VM之内,之外?

4.Re:问个关于垃圾回收的问题。 [Re: Dollyn] Copy to clipboard
Posted by: 烂泥
Posted on: 2006-07-16 23:40

上网查查'"虚拟机'"的定义,你就明白

5.Re:问个关于垃圾回收的问题。 [Re: Dollyn] Copy to clipboard
Posted by: cxp108
Posted on: 2006-07-17 10:13

JVM外的资源,主要是指一些操作系统级的资源,比如:文件,网络连接,摄像头等。

实际上对大部分资源JVM都会在垃圾回收的时候关闭,但垃圾回收不是完美无缺的,在
某些特殊情况下也可能出现资源未被关闭的现象,为了避免类似的情况发生,我们在确定
不使用该资源后应该调用close()强制性的将其关闭,以保证程序以我们要求的方式运行。
这是一个非常好的习惯,应该要养成。


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923