日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

【Java 虚拟机原理】垃圾回收算法 ( 设置 JVM 命令参数输出 GC 日志 | GC 日志输出示例 | GC 日志分析 )

發(fā)布時間:2025/6/17 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Java 虚拟机原理】垃圾回收算法 ( 设置 JVM 命令参数输出 GC 日志 | GC 日志输出示例 | GC 日志分析 ) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 一、設(shè)置 JVM 命令參數(shù)輸出 GC 日志
  • 二、GC 日志示例
  • 三、GC 日志分析





一、設(shè)置 JVM 命令參數(shù)輸出 GC 日志



在 IntelliJ IDEA 的啟動參數(shù)中設(shè)置

-XX:+PrintGCDetails

Java 虛擬機(jī)參數(shù) , 當(dāng)運(yùn)行 Java 程序時 , 會在控制臺打印 GC 回收相關(guān)信息 ;

其它的 Java 虛擬機(jī)常用命令參數(shù)參考 : https://blog.csdn.net/yangwei234/article/details/82977716


選擇 IntelliJ IDEA 中 , 運(yùn)行程序 下拉菜單 中的 " Edit Configurations… " 選項(xiàng) ;

在 VM options 輸入框中 , 輸入 -XX:+PrintGCDetails 選項(xiàng) , 這是給 Java 虛擬機(jī)設(shè)置的參數(shù) ;





二、GC 日志示例



運(yùn)行如下代碼 :

public class Main {public static void main(String[] args) {Main main = new Main();main = null;System.gc();} }

命令行輸出的 GC 日志 :

[GC (System.gc()) [PSYoungGen: 7895K->744K(153088K)] 7895K->752K(502784K), 0.0125267 secs] [Times: user=0.00 sys=0.00, real=0.03 secs] [Full GC (System.gc()) [PSYoungGen: 744K->0K(153088K)] [ParOldGen: 8K->593K(349696K)] 752K->593K(502784K), [Metaspace: 3012K->3012K(1056768K)], 0.0039947 secs] [Times: user=0.00 sys=0.00, real=0.00 secs] HeapPSYoungGen total 153088K, used 3947K [0x0000000715b80000, 0x0000000720600000, 0x00000007c0000000)eden space 131584K, 3% used [0x0000000715b80000,0x0000000715f5af98,0x000000071dc00000)from space 21504K, 0% used [0x000000071dc00000,0x000000071dc00000,0x000000071f100000)to space 21504K, 0% used [0x000000071f100000,0x000000071f100000,0x0000000720600000)ParOldGen total 349696K, used 593K [0x00000005c1200000, 0x00000005d6780000, 0x0000000715b80000)object space 349696K, 0% used [0x00000005c1200000,0x00000005c1294520,0x00000005d6780000)Metaspace used 3042K, capacity 4496K, committed 4864K, reserved 1056768Kclass space used 330K, capacity 388K, committed 512K, reserved 1048576K





三、GC 日志分析



[GC (System.gc()) [PSYoungGen: 7895K->744K(153088K)] 7895K->752K(502784K), 0.0125267 secs] [Times: user=0.00 sys=0.00, real=0.03 secs]

GC (System.gc()) :

GC (System.gc()) 表示是開發(fā)者手動調(diào)用了 System.gc() 方法 ;


[PSYoungGen: 7895K->744K(153088K)] :

PSYoungGen , 其中 PS 是 Parallel Seavenge 垃圾回收器 , YoungGen 是年輕代 ;

7895K->744K 表示垃圾回收 , 從占用 7895K 內(nèi)存 , 變?yōu)檎加?744K 內(nèi)存 ;

153088K 表示年輕代 內(nèi)存大小 ;


[Times: user=0.00 sys=0.00, real=0.03 secs] :

Times 表示本次垃圾回收基本耗時 ;


[Full GC (System.gc()) [PSYoungGen: 744K->0K(153088K)] [ParOldGen: 8K->593K(349696K)] 752K->593K(502784K), [Metaspace: 3012K->3012K(1056768K)], 0.0039947 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]

[ParOldGen: 8K->593K(349696K)] :

Par 表示 Parallel 垃圾回收器 , OldGen 表示老年代 ;


[Times: user=0.00 sys=0.00, real=0.00 secs] :

Times 表示本次垃圾回收基本耗時 ;


PSYoungGen total 153088K, used 3947K [0x0000000715b80000, 0x0000000720600000, 0x00000007c0000000)eden space 131584K, 3% used [0x0000000715b80000,0x0000000715f5af98,0x000000071dc00000)from space 21504K, 0% used [0x000000071dc00000,0x000000071dc00000,0x000000071f100000)to space 21504K, 0% used [0x000000071f100000,0x000000071f100000,0x0000000720600000)

111 行 PSYoungGen total 153088K, used 3947K [0x0000000715b80000, 0x0000000720600000, 0x00000007c0000000) 表示年輕代內(nèi)存空間總大小 , 使用了多少 ;

222 行 eden space 131584K, 3% used [0x0000000715b80000,0x0000000715f5af98,0x000000071dc00000) 表示 Eden 區(qū)大小 , 以及使用情況 ;

333 行 from space 21504K, 0% used [0x000000071dc00000,0x000000071dc00000,0x000000071f100000) 表示 From 區(qū)大小 , 以及使用情況 ;

444 行 to space 21504K, 0% used [0x000000071f100000,0x000000071f100000,0x0000000720600000) 表示 To 區(qū)大小 , 以及使用情況 ;


ParOldGen total 349696K, used 593K [0x00000005c1200000, 0x00000005d6780000, 0x0000000715b80000)object space 349696K, 0% used [0x00000005c1200000,0x00000005c1294520,0x00000005d6780000)

老年代區(qū)域的內(nèi)存大小 , 及使用情況 ;

總結(jié)

以上是生活随笔為你收集整理的【Java 虚拟机原理】垃圾回收算法 ( 设置 JVM 命令参数输出 GC 日志 | GC 日志输出示例 | GC 日志分析 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。