概要
主要用下列3个函数。
Runtime.getRuntime().freeMemory()
Runtime.getRuntime().totalMemory()
Runtime.getRuntime().maxMemory()
GC主动运行
System.gc()
package net.tianyu.sample;
import java.text.DecimalFormat;
public class TestGC {
public static void main(String[] args) {
byte[] buf = null;
for (int i = 0; i < 10; i++) {
buf = new byte[1000000];
System.out.println(getMemoryInfo());
System.gc();
}
}
public static String getMemoryInfo() {
DecimalFormat f1 = new DecimalFormat("#,###KB");
DecimalFormat f2 = new DecimalFormat("##.#");
long free = Runtime.getRuntime().freeMemory() / 1024;
long total = Runtime.getRuntime().totalMemory() / 1024;
long max = Runtime.getRuntime().maxMemory() / 1024;
long used = total - free;
double ratio = (used * 100 / (double) total);
String info = "";
info += "Java Memory : Total=" + f1.format(total) + ",\t";
info += "Used=" + f1.format(used) + " (" + f2.format(ratio) + "%),\t";
info += "MaxCanUse=" + f1.format(max);
return info;
}
}
分享到:
相关推荐
《Java入门到精通》是一本面向Java初学者的权威指南,旨在帮助读者快速掌握Java编程语言的基础知识并逐步深入到高级技术。这本书涵盖了从安装Java开发环境,理解基本语法,到构建复杂应用程序的全过程,是学习Java...
Java的内存管理机制(垃圾收集器)在处理大规模数据时能确保内存的有效利用,但可能会因为垃圾收集的开销影响性能。"java.png"可能展示了Java在处理大规模数据时的内存使用情况。 PHP,一种广泛用于Web开发的脚本...
java入门java入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zip...
java入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava...
《Java入门123——一个老鸟的Java学习心得》。作者以独特的视角向Java初学者讲述了如何才能真正理解和掌握Java。本书充分考虑了初学Java的种种困难,讲解细致入微,抽丝剥茧,层层推进,并采用对比、比喻和类比等...
以上只是Java入门的一些核心知识点,实际学习过程中,还会涉及到更多的高级主题,如反射、注解、设计模式、并发编程、JVM内存管理等。这个入门课件将逐步引导初学者掌握这些基础知识,为后续深入学习Java打下坚实的...
Educoder题目:Java入门 - 数组基础答案解析
java教程java教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zip...
Java是一种广泛使用的面向对象的编程语言,以其跨...总之,理解Java的内存管理和垃圾回收机制对于编写高性能、低内存消耗的应用至关重要。通过深入学习和实践,开发者能够更好地解决内存泄漏、提高应用性能和稳定性。
本资源“java从入门到精通PPT”提供了一套完整的Java学习路径,通过一系列PPT帮助初学者逐步掌握这门强大的语言。PPT的形式使得学习过程更加直观和易于理解,特别适合自学者进行系统性学习。 首先,Java入门阶段,...
java入门级练手小游戏源码合集java入门级练手小游戏源码合集java入门级练手小游戏源码合集 java入门级练手小游戏源码合集java入门级练手小游戏源码合集java入门级练手小游戏源码合集 java入门级练手小游戏源码合集...
标题“Java加载dll,导致Java进程内存泄露”涉及到的是Java平台与本地库(DLL)交互时可能出现的问题。在Java中,通过Java Native Interface (JNI) 可以调用C/C++编写的动态链接库(DLL),实现Java代码与本地代码的...
《Java基础入门(第3版)》是一本针对Java初学者的教材,其课后答案文档提供了对书中习题的解答,旨在帮助读者巩固所学知识。Java是一种面向对象的编程语言,具备跨平台性,由Java虚拟机(JVM)负责解释执行。Java...
java学习入门到精通全套电子版资料,跟着学习和理解,方便快速
Java 基础入门,适合初学入门java的同学
Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并...
JVisualVM是Java开发者的有力工具,它可以提供内存消耗、线程状态、CPU使用等信息,并通过安装VisualGC插件来深入分析GC行为和内存详细消耗,帮助定位和解决内存问题。 总的来说,理解Java内存管理和垃圾收集机制,...
简介:java入门到精通的全套教程,适合小白0基础java入门与学习 适用人群:学生、转行计算机、编程学习、java 使用场景java入门学习、复习、面试准备
根据提供的文件信息,本文将围绕Java 7这一版本的基础知识、特性以及如何通过提供的链接获取《Java 7经典入门》这本书进行详细介绍。 ### Java 7简介 Java 7是Java平台标准版(Java SE)的一个重要版本,由Oracle...