请各位老鸟说下这个方法的好出与坏处,什么情况用比较好!

解决方案 »

  1.   

    一旦一个对象不被其他任何对象引用的时候,它就变成可回收的对象了。
    你可以使用System.gc()来建议垃圾回收器收集垃圾,但是这并不能保证执行。
      

  2.   

    不建议手动调用垃圾回收机制,因为这个回收机制具有 不确定性。
    建议让JVM自动管理。
    使用者之需要设置JVM的堆栈大小就可以了,通过JVM的堆栈大小的调节,可以实现Java程序性能的调优,具体的可以Google一下。
      

  3.   

    public static void gc()运行垃圾回收器。 
    调用 gc 方法暗示着 Java 虚拟机做了一些努力来回收未用对象,以便能够快速地重用这些对象当前占用的内存。当控制权从方法调用中返回时,虚拟机已经尽最大努力从所有丢弃的对象中回收了空间。 
    从说明可以知道用gc()时要加大内存消耗,增加CPU负担.所以该方法一般在对内存需求比较大时,考虑该方法,一般情况下不要使用.根据目前的内存容量来看,该方法一般不用.
      

  4.   

    人生来有胳膊,因为他有用!如果人生来,上帝告诉他不建议你用胳膊,因为有不确定性!
    那sun公司设计这个类的方法是否很多余?
    我在想既然设计了!必然有用他的时候!我曾经想过如果我声称的对象里含有的内容如果很庞大,那当不用的时候,我是不是该用这个方法来主动的回收!
    可是关键就是如果我对象很小那么该让jvm自动回收,可是楼上的这些解释我依然无法理解在用这个方法的时候,这个方法是如何给
    jvm增加了多余的负担!这个过程我想了解下!
      

  5.   

    其实Java中没有任何机制保证程序能强制执行垃圾回收,gc()不行,其他任何方法都不行。
    调用gc()只能告诉jvm说,我想现在运行垃圾回收,而jvm究竟什么时间进行,那是jvm自己的事,程序无权干涉