A a = new A();
a = null;
System.gc();
把A创建的对象的引用置为空后,执行System.gc();
就立即把创建的这个对象的所占的内存回收掉了吗?
还是说得等到当前内存不足时他才会去回收?System.gc()只是提前让系统去观察下
当前系统的内存情况而已?
不会的,System.gc();只是建议Java虚拟机对此部分内存进行回收,但是不一定会发生GC
【System.gc();】此函数建议JVM进行GC,只是建议而非一定,
很多情况下它会触发主GC
参考链接:http://blog.csdn.net/jiyiqini/article/details/46725647
视当时内存使用量而定,并不是一定的