虛擬機參數(shù)

一、堆分配參數(shù)

-XX:+PrintGC  使用這個參數(shù),虛擬機啟動后,只要遇到GC就會打印日志。
-XX:+UseSerialGC  配置串行回收器
-XX:+PrintGCDetails  可以查看詳細(xì)信息,包括各個區(qū)的情況
-XX:+PrintCommandLineFlags  可以將顯式或隱式傳給虛擬機的參數(shù)輸出
-Xms  設(shè)置Java程序啟動時初始堆大小
-Xmx  設(shè)置Java程序能獲得的最大堆大小
-Xmx20m -Xms5m  示例設(shè)置最大堆大小20M,初始堆大小5M

在實際工作中,我們可以直接將初始的堆大小與最大堆大小設(shè)置相等,這樣的好處是可以減少程序運行時的垃圾回收次數(shù),從而提高性能。

二、新生代的配置

-Xmn:可以設(shè)置新生代的大小,設(shè)置一個比較大的新生代會減少老年代的大小,這個參數(shù)對系統(tǒng)性能以及GC行為有很大的影響,新生代大小一般會設(shè)置整個堆空間的1/3到1/4左右。
  -XX:SurvivorRatio:用來設(shè)置新生代中eden空間和from/to空間的比例。含義:-XX:SurvivorRatio=eden/from=eden/to
  -XX:NewRatio:設(shè)置新生代和老年代的比例。-XX:NewRatio=老年代/新生代。
  總結(jié):不同的堆分布情況,對系統(tǒng)執(zhí)行會產(chǎn)生一定的影響,在實際工作中,應(yīng)該根據(jù)系統(tǒng)的特點作出合理的配置,基本策略:盡可能將對象預(yù)留在新生代,減少老年代的GC次數(shù)。

三、棧配置

Java 虛擬機提供了參數(shù) -Xss 來指定線程的最大??臻g,整個參數(shù)也直接決定了函數(shù)可調(diào)用的最大深度。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 虛擬機大致分為系統(tǒng)虛擬機(vmware,可運行完整操作系統(tǒng)的軟件平臺)和程序虛擬機(jvm,專門為執(zhí)行當(dāng)個計算機程...
    MicoCube閱讀 1,129評論 0 0
  • 一、跟蹤調(diào)試參數(shù) 1.1 跟蹤垃圾回收-讀懂虛擬機日志 Java的一大特色就是支持自動的垃圾回收(GC),但是有時...
    端木軒閱讀 975評論 2 5
  • 原文閱讀 前言 這段時間懈怠了,罪過! 最近看到有同事也開始用上了微信公眾號寫博客了,挺好的~給他們點贊,這博客我...
    碼農(nóng)戲碼閱讀 6,144評論 2 31
  • Java 虛擬機有自己完善的硬件架構(gòu), 如處理器、堆棧、寄存器等,還具有相應(yīng)的指令系統(tǒng)。JVM 屏蔽了與具體操作系...
    尹小凱閱讀 1,747評論 0 10
  • 這是 chaim “ 365 日寫作計劃”第 11 天的寫作內(nèi)容。 大年初二,開始走親戚。 在農(nóng)村,過去走親戚一般...
    chaim閱讀 250評論 0 0

友情鏈接更多精彩內(nèi)容