JAVA程序测试时用到的与内存测试有关的东西
1、JVM启动参数
垃圾回收器调用情况参数,使用如下参数可以看到程序何时启动GC进行垃圾回收,和垃圾回收的详细信息。
java Test -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
相关文章:http://hi.baidu.com/lovemywolf/item/c18bc98655bc1d1dc2162764
http://hi.baidu.com/576699909/item/9daf4d7c33a09f316f29f66c
内存快照文件,使用下面的参数当程序出现MemoryError时会将内存快照保存在文件中。然后可以通过IBM HeapAnalyzer、jhat(Java Head Analyse Tool )、 Eclipse Memory Analyzer等工具分析内存中堆的情况。
java Test -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=d:\dump.hprof
来设置应用向OS直接申请的最大内存数
-XX:MaxDirectMemorySize=
2、内存分析工具
JConsole
JDK自带的工具,在JDK的BIN目录中就可以找到。很方便的可以分析内存、CPU、线程等内存情况,可以将内存快照保存到文件中。
IBM的堆分析工具,IBM的强大不是没有理由的,这个工具用起来还是不错的。这次用这个工具很快到就找到问题在哪儿了。
JAVA程序测试时用到的与内存测试有关的东西的更多相关文章
- java程序运行时内存分配详解
java程序运行时内存分配详解 这篇文章主要介绍了java程序运行时内存分配详解 ,需要的朋友可以参考下 一. 基本概念 每运行一个java程序会产生一个java进程,每个java进程可能包含一个 ...
- Java程序运行时内存划分
1.Java程序跨平台运行的原因 主要原因是:各种平台的JVM和字节码文件 Java源程序--具体平台的机器代码文件---被编译器翻译成平台无关的Class文件,又用特定JVM运行字节码文件,JVM在 ...
- java程序运行时内存分配详解 (转)
转自:http://www.tuicool.com/articles/uU77v2 一. 基本概念 每运行一个java程序会产生一个java进程,每个java进程可能包含一个或者多个线程,每一个Ja ...
- java程序员--小心你代码中的内存泄漏
当你从c&c++转到一门具有垃圾回收功能的语言时,程序员的工作就会变得更加容易,因为你用完对象,他们会被自动回收,但是,java程序员真的不需要考虑内存泄露吗? 其实不然 1.举个例子-看你能 ...
- APP测试时不可忽视搭建代理服务器抓包测试的必要性
这几天测的一个app,后台从已有服务器搬迁到了阿里云,接口api之类的都没有变化,但测试时发现客户端始终无法使用,每次点击都无法获得服务器反馈 用python编写脚本调接口,没问题,返回数据一切正常, ...
- Java程序运行时的几个区域
Java运行时涉及到的区域 几个基本概念: 1.Java对象 2.Java方法 3.一个编译好的类,以class文件的形式出现 4.Java的本地方法 5.线程私有和线程共有 一 ...
- [Java]程序运行时的内存分配
本文出处:<Thinking in JAVA> 寄存器这是最快的存储区,因为它位于不同于其他存储区的地方--处理器内部.但是寄存器的数量极其有限,所以寄存器根据需求进行分配.你不能直接控制 ...
- java程序 启动时参数
iEMP34:/opt/version/lktest/b030/jre/jre_linux/bin # ./java -classpath . SysInfo Exception in threa ...
- 尚学堂 JAVA DAY12 java程序执行时内存的分配
随机推荐
- scala (2) while 和变量
(1)在scala中声明变量有两个关键字,val和var val: 是不可变的,即声明了变量不能再进行更改,类似于java中的final var: 是可变的,即可以重新对其赋值 声明变量的通用格式: ...
- scRNA-seq genomic analysis pipline
a scRNA-seq genomic anlysis pipline .caret,.dropup>.btn>.caret{border-top-color:#000!important ...
- Ubuntu16.04 下 python 3.6 安装以及各版本python切换(同时解决各种依赖缺失)
有些博客给出了从源代码通过./configure.make.sudo make 会导致安装玩之后出现各种依赖缺失的问题,如_sqlite3._bz2 等问题. 当然也有很多帖子给出了从系统自带的pyt ...
- 20155232 2016-2017-2 《Java程序设计》第1周学习总结
20155232 2016-2017-2 <Java程序设计>第1周学习总结 认真学习考核方式,理解成绩构成 100分构成: 翻转课堂考核12次(60分) 实验5次(15分) 团队项目(2 ...
- pwd命令的实现
pwd 命令描述 Linux中用 pwd 命令来查看"当前工作目录"的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd ...
- 安装虚拟机与Linux的学习
#虚拟机 在安装虚拟机之前,我先上网查了一些关于虚拟机的知识. 虚拟机,即Virtual Machine,在计算机科学中的体系结构裏,是指一种特殊的软件,他可以在计算机平台和终端用户之间创建一种环境, ...
- 20155318 《Java程序设计》实验二 (Java面向对象程序设计)实验报告
20155318 <Java程序设计>实验二 (Java面向对象程序设计)实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉 ...
- 20155325 实验三 敏捷开发与XP实践
实验三 敏捷开发与XP实践-1 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成IDEA 在IDEA中使用工具(Code-> ...
- 20155332 如何获取新技能+c语言学习调查
如何获取新技能+c语言学习调查 你有什么技能比大多人(超过90%以上)更好? 如果问我有没有什么技能比大多数人,并且是90%的人好,我还真不敢说有,因为世界上有70亿人,要比63亿人做的好才行啊.我也 ...
- 20145234黄斐《网络对抗技术》实验五,MSF基础应用
MSF的六种模块 渗透攻击模块(Exploit Modules)渗透攻击是指由攻击者或渗透测试者利用一个系统.应用或服务中的==安全漏洞==,所进行的攻击行为. 辅助模块(Auxiliary Modu ...