`
yutiansky
  • 浏览: 199435 次
  • 性别: Icon_minigender_1
  • 来自: 本溪
社区版块
存档分类
最新评论

(java入门)内存消耗的调查

阅读更多

概要

主要用下列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入门到精通pdf

    《Java入门到精通》是一本面向Java初学者的权威指南,旨在帮助读者快速掌握Java编程语言的基础知识并逐步深入到高级技术。这本书涵盖了从安装Java开发环境,理解基本语法,到构建复杂应用程序的全过程,是学习Java...

    java php python erlang 千万级内存数据性能比较

    Java的内存管理机制(垃圾收集器)在处理大规模数据时能确保内存的有效利用,但可能会因为垃圾收集的开销影响性能。"java.png"可能展示了Java在处理大规模数据时的内存使用情况。 PHP,一种广泛用于Web开发的脚本...

    java入门阶段相关代码.zip

    java入门java入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zipjava入门阶段相关代码.zip...

    Java入门项目管理系统代码.zip

    java入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava入门项目管理系统代码.zipjava...

    Java入门123

    《Java入门123——一个老鸟的Java学习心得》。作者以独特的视角向Java初学者讲述了如何才能真正理解和掌握Java。本书充分考虑了初学Java的种种困难,讲解细致入微,抽丝剥茧,层层推进,并采用对比、比喻和类比等...

    java入门课件(java初学者必备)

    以上只是Java入门的一些核心知识点,实际学习过程中,还会涉及到更多的高级主题,如反射、注解、设计模式、并发编程、JVM内存管理等。这个入门课件将逐步引导初学者掌握这些基础知识,为后续深入学习Java打下坚实的...

    Educoder题目:Java入门 - 数组基础答案解析.md

    Educoder题目:Java入门 - 数组基础答案解析

    java教程入门.zip

    java教程java教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zipjava教程入门.zip...

    java入门、java内存区域和OOM、垃圾回收器和垃圾回收策略

    Java是一种广泛使用的面向对象的编程语言,以其跨...总之,理解Java的内存管理和垃圾回收机制对于编写高性能、低内存消耗的应用至关重要。通过深入学习和实践,开发者能够更好地解决内存泄漏、提高应用性能和稳定性。

    java从入门到精通PPT

    本资源“java从入门到精通PPT”提供了一套完整的Java学习路径,通过一系列PPT帮助初学者逐步掌握这门强大的语言。PPT的形式使得学习过程更加直观和易于理解,特别适合自学者进行系统性学习。 首先,Java入门阶段,...

    java入门级练手小游戏源码合集.zip

    java入门级练手小游戏源码合集java入门级练手小游戏源码合集java入门级练手小游戏源码合集 java入门级练手小游戏源码合集java入门级练手小游戏源码合集java入门级练手小游戏源码合集 java入门级练手小游戏源码合集...

    Java加载dll,导致Java进程内存泄露

    标题“Java加载dll,导致Java进程内存泄露”涉及到的是Java平台与本地库(DLL)交互时可能出现的问题。在Java中,通过Java Native Interface (JNI) 可以调用C/C++编写的动态链接库(DLL),实现Java代码与本地代码的...

    《Java基础入门(第3版)》(Java):课后答案-docx文档

    《Java基础入门(第3版)》是一本针对Java初学者的教材,其课后答案文档提供了对书中习题的解答,旨在帮助读者巩固所学知识。Java是一种面向对象的编程语言,具备跨平台性,由Java虚拟机(JVM)负责解释执行。Java...

    java学习入门到精通全套电子版资料

    java学习入门到精通全套电子版资料,跟着学习和理解,方便快速

    Java 基础入门(传智播客出品).pdf

    Java 基础入门,适合初学入门java的同学

    java入门基础教程(pdf)

    Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并...

    基于Java的内存泄露分析及定位

    JVisualVM是Java开发者的有力工具,它可以提供内存消耗、线程状态、CPU使用等信息,并通过安装VisualGC插件来深入分析GC行为和内存详细消耗,帮助定位和解决内存问题。 总的来说,理解Java内存管理和垃圾收集机制,...

    java入门到精通的全套教程

    简介:java入门到精通的全套教程,适合小白0基础java入门与学习 适用人群:学生、转行计算机、编程学习、java 使用场景java入门学习、复习、面试准备

    java7入门经典完全扫描版百度网盘下载地址

    根据提供的文件信息,本文将围绕Java 7这一版本的基础知识、特性以及如何通过提供的链接获取《Java 7经典入门》这本书进行详细介绍。 ### Java 7简介 Java 7是Java平台标准版(Java SE)的一个重要版本,由Oracle...

Global site tag (gtag.js) - Google Analytics