Java的公有API可以主動調用GC的有兩種辦法,一個是
System.gc();
// 或者下面,兩者等價
Runtime.getRuntime().gc();
還有一個是JMX:
java.lang.management.MemoryMXBean.gc()
作用跟System.gc()也是類似的。
MemoryMXBean.gc()和System.gc()的内部實作都是Runtime.getRuntime().gc(),從效果上說兩者一模一樣沒有差別。
System.gc();
另外Java的GC是由JVM自行調動的,在需要的時候才執行,上面的指令隻是告訴JVM盡快GC一次,但不會立即執行GC。
參考部落格:https://blog.csdn.net/sdmjhca/article/details/76642517