Tôi đang sử dụng Eclipse. Vấn đề là ứng dụng của tôi bị treo nếu bộ nhớ được phân bổ nhỏ hơn 512MB. Bây giờ là có anyway để kiểm tra bộ nhớ có sẵn cho một chương trình trước khi bắt đầu xử lý toàn bộ bộ nhớ nặng? Ví dụ, tôi biết chúng tôi có thể kiểm tra sẵn JVM kích thước heap như:Kiểm tra heapSize sẵn có lập trình?
long heapSize = Runtime.getRuntime().totalMemory();
System.out.println("Heap Size = " + heapSize);
Vấn đề là, điều này mang lại kích thước heap JVM. Thậm chí tăng nó không hoạt động bằng Eclipse. Trong Eclipse, nếu tôi thay đổi các đối số VM thì nó hoạt động. Tuy nhiên bản in từ các câu lệnh trên luôn giống nhau. Có lệnh nào mà qua đó tôi có thể biết chính xác tôi đã cấp phát bộ nhớ cho một ứng dụng cụ thể không?
có thể vấn đề là nhật thực. Bạn đã thử Netbeans hay IntelliJ chưa? – telm
tôi đã thử, kết quả tương tự với bất kỳ Thời gian chạy IDE – Johnydep
nào có cả totalMemory() và maxMemory(). maxMemory lớn hơn trong kinh nghiệm của tôi. –