Java应用启动时,可以通过设置verbose参数来输出JVM的gc情况,命令如下:java -verbose:gc
在Eclipse中可以通过Run As|Run Configurations|Arguments|VM Arguments进行设置。
使用该命令后输出如下:
[Full GC 1224K->1113K(123584K), 0.0120528 secs]
箭头(->)前后的数据1224K和1113K分别表示垃圾收集GC前后所有存活对象使用的内存容量,说明有1224K–1113K = 111K大小的对象被回收,括号内的数据 123584K为堆内存的总容量,收集所需的实际为 0.0120528秒。
需要注意的是:GC会暂用CPU时间片,会造成程序短暂的停顿。
控制台输出GC信息还可以使用如下命令:
在JVM的启动参数中加入-XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationStoppedTime,按照参数的顺序分别输出GC的简要信息,GC的详细信息、GC的时间信息及GC造成的应用暂停的时间。
GC日志分析
各种参数详解:http://blog.csdn.net/yxc135/article/details/12137663
相关推荐
-verbose:module显示模块使用情况。 -verbose:jni显示JNI方法使用信息。 -Xbatch禁用后台编译。 -Xcomp强制使用即时编译(JIT)。 -Xint强制使用解释模式。 -Xmixed使用解释模式和JIT的混合模式。 -Xprof用于生成...
- `-verbose:gc`:输出基本的GC信息。 - `-Xlog:gc*`:提供更详细的GC日志。 - `-Xlog:task*`:输出GC工作线程任务的时间戳。 - `-Xlog:heap`,`-Xlog:age*`,`-Xlog:ref*`:分别针对堆、年轻代年龄和引用处理...
- `-verbose:class` 输出类加载信息。 - `-XX:+TraceClassLoading` 跟踪类加载过程。 5. **编译优化**: - `-XX:+TieredCompilation` 开启分层编译,提高代码执行效率。 - `-XX:CompileThreshold` 设置触发即时...
2. `-verbose:gc`:开启垃圾回收(Garbage Collection, GC)的日志,展示每次GC发生的时间、类型、耗时以及内存使用情况,对于优化内存使用和调优GC参数至关重要。 3. `-verbose:jni`:记录Java Native Interface...
该库能够解析使用关键 GC 日志记录选项生成的日志: -XX:+PrintGC(或 -verbose:gc) -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps 支持以下 Oracle JVM 的垃圾收集器: 一代 集电极 ...
1. **-verbose:gc**:开启GC日志记录。 2. **-XX:+PrintGCTimeStamps**:在GC日志中添加时间戳,方便分析。 3. **-Xms1024m -Xmx1024m**:设置初始堆内存和最大堆内存为1GB。 4. **-XX:NewSize=341m -XX:MaxNewSize=...
Java开发人员常常需要面对JVM(Java虚拟机)的调优任务,特别是在处理大型系统时,JVM的垃圾收集(GC)性能优化至关重要。JDK8引入了许多改进,包括对垃圾收集器的优化,使得调优更加精细。本文将重点讨论JDK8中的GC...
- `-verbose:gc`:开启垃圾收集日志,简单输出GC信息。 - `-XX:+PrintGC`:与`-verbose:gc`类似,但输出更简洁。 - `-XX:+PrintGCDetails`:详细记录GC过程,包括每个阶段的时间、内存变化等。 - `-XX:+...
GC(Garbage Collection)是 JVM 中的一种自动内存管理机制,用于回收无用的对象以释放内存空间。Full GC 是一种特殊的 GC 操作,会对整个堆进行回收。触发 GC 的条件包括:新对象生成,并且在 Eden 区申请空间失败...
- `-verbose:class`: 输出类加载信息。 - `-XX:+TraceClassLoading`: 跟踪类加载过程。 - `-XX:+LogCompilation`: 记录即时编译(JIT)活动。 6. **线程与并发参数** - `-XX:MaxGCPauseMillis`: 设置最大垃圾...
IBM Java虚拟机(JVM)为开发者提供了丰富的配置选项来优化应用程序性能、诊断问题以及调整各种资源使用情况。本文将详细解释IBM JVM中的关键参数及其功能,帮助您更好地管理和调优Java应用。 #### 基础参数 1. **-...
Java虚拟机(JVM)内存管理是Java应用程序性能优化的关键环节。...通过输出GC日志,结合各种参数和工具,开发者能够深入理解内存使用情况,进而优化程序性能,防止因内存问题导致的性能瓶颈和系统稳定性问题。
- `-verbose:gc` 输出垃圾收集日志。 - `-verbose:jni` 显示JNI函数调用细节。 5. **版本信息**: - `-version` 打印Java版本信息并退出。 6. **断言**: - `-ea[:<packagename>...|:]` 或 `-enableassertions...
Java命令参数详解是Java开发中不可或缺的一部分,它们允许开发者对JVM(Java虚拟机)的行为进行微调,以优化程序的性能、控制内存使用、调试和监控等。本文将深入探讨一些关键的Java命令行参数。 1. **-version**: ...
例如,Serial GC适用于单线程环境,Parallel GC和Parallel Old GC用于多CPU环境,CMS(Concurrent Mark Sweep)适合低延迟需求,G1 GC则是现代JVM的首选,能自动进行内存分区和垃圾收集。 4. **GC参数调整**:如`-...
8. -verbose:gc:实时垃圾收集信息。 9. -Xloggc:gc.log:指定垃圾收集日志文件。 10. -XX:+UseParNewGC:缩短 minor 收集的时间。 11. -XX:+UseConcMarkSweepGC:缩短 major 收集的时间。 PermGen space 是 ...
- `-verbose:gc` 和 `-Xloggc:gc.log`:启用详细垃圾回收日志,并指定日志文件路径,这对于监控和调优JVM行为非常有用。 2. **Eclipse 配置文件优化**: - 打开Eclipse的安装目录,找到 `eclipse.ini` 文件进行...
/bin/sh\nJAVA_OPTS=\"\$JAVA_OPTS-Duser.timezone=GMT+08-server-Xms128m-Xmx512m-XX:PermSize=64m-XX:MaxPermSize=128m-XX:NewSize=64m-XX:MaxNewSize=128m-verbose:gc-Xloggc:/logs/gc.log-XX:+...