`
yutiansky
  • 浏览: 199005 次
  • 性别: 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+内存分析工具+MAT

    这有助于识别哪些对象是内存消耗的大户,以及它们之间的引用关系。 再者,MAT还提供"Object Set"功能,允许开发者根据特定条件筛选对象,比如查找所有实例化次数超过一定数量的类,或者查找所有具有特定字段的对象...

    Java入门贪吃蛇小游戏.zip

    Java入门贪吃蛇小游戏.zipJava入门贪吃蛇小游戏.zipJava入门贪吃蛇小游戏.zip Java入门贪吃蛇小游戏.zipJava入门贪吃蛇小游戏.zipJava入门贪吃蛇小游戏.zip Java入门贪吃蛇小游戏.zipJava入门贪吃蛇小游戏.zipJava...

    JAVA基础入门到精通pdf

    9. **IO流**:Java的输入/输出(IO)库支持对文件、网络和内存数据的读写操作。流的概念贯穿其中,分为字节流和字符流。 10. **多线程**:Java内置对多线程的支持,通过Thread类或Runnable接口实现并发执行。同步...

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

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

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

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

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

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

    java从入门到精通PPT

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

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

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

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

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

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

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

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

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

    《Java基础入门》-课后习题答案.doc

    Java 基础入门知识点总结 本文将对《Java 基础入门》课后习题答案进行总结,涵盖了 Java 基础知识点,包括 Java 开发入门、Java 基础类、变量类型、运算符、控制流语句、方法重载等。 一、Java 开发入门 * Java ...

    java入门到精通的全套教程

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

    推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 全套PPT课件资源集合 共18个章节.rar

    推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 01.Java语言概述(共21页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 02.理解结构化程序设计_理解面向对象(共25页).ppt 推荐优质Java...

    Java 7入门经典

    《Java 7入门经典》内容简介:无论学习Java是为了编写嵌入网页的定制applet,还是为了编写大型应用程序,都十分适合阅读此书。《Java 7入门经典》是关于Java语言讲解最为细致、全面的入门书籍,介绍了使用最新的Java...

    java学习从入门到精通教程(pdf)

    本教程“Java学习从入门到精通”旨在为初学者和希望巩固基础的开发者提供全面的学习资源。以下是对该教程内容的详细概述: 1. **Java简介**:这部分将介绍Java的历史、特点和应用领域,帮助你理解为何Java成为全球...

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

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

Global site tag (gtag.js) - Google Analytics