Điều này có thể khá cơ bản, nhưng rất tò mò muốn biết. Dưới đây là đoạn mã và đầu raThu thập GC ở đây là gì?
public class PlainSystemGC {
public static void main(String ...strings) {
System.out.println("Free Memory (Before GC): " + Runtime.getRuntime().freeMemory());
System.gc();
System.out.println("Free Memory (After GC): " + Runtime.getRuntime().freeMemory());
}
}
và đầu ra
Free Memory (Before GC): 1859640
Free Memory (After GC): 1911768
Tôi quan tâm để biết những gì đang GC thu thập ở đây vì không có đối tượng được tạo ra.
Bộ nhớ được giải phóng là gì? (Và điều đó quá 52kb)
@JSauer - Nó cung cấp cho chính xác kết quả tương tự ngay cả khi chạy 100 lần
Không phải lúc nào cũng giống nhau: http://ideone.com/5UkgE (122416 giải phóng) – NullUserException
@NullUserExeception - Số lượng bộ nhớ được giải phóng có thể khác nhau trên các JVMS khác nhau, nhưng số được giải phóng sẽ giống nhau trên các lần chạy khác nhau của cùng một mã – JWhiz