2014-04-15 184 views
0

我運行一個簡單的程序與標誌-Xloggc:./gc-$$.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps和所有它輸出是JVM忽略GC日誌記錄標誌?

Heap 
def new generation total 4928K, used 642K [0x04760000, 0x04cb0000, 0x09cb0000) 
    eden space 4416K, 14% used [0x04760000, 0x04800b38, 0x04bb0000) 
    from space 512K, 0% used [0x04bb0000, 0x04bb0000, 0x04c30000) 
    to space 512K, 0% used [0x04c30000, 0x04c30000, 0x04cb0000) 
tenured generation total 10944K, used 0K [0x09cb0000, 0x0a760000, 0x14760000) 
    the space 10944K, 0% used [0x09cb0000, 0x09cb0000, 0x09cb0200, 0x0a760000) 
compacting perm gen total 12288K, used 1588K [0x14760000, 0x15360000, 0x18760000) 
    the space 12288K, 12% used [0x14760000, 0x148ed008, 0x148ed200, 0x15360000) 
No shared spaces configured. 

(我已經嘗試添加-verbose:gc也)

我跳拿到實際工作GC統計,如:

581.146: [Full GC [PSYoungGen: 170752K->0K(341376K)] [PSOldGen: 786611K->786713K(919552K)] 957363K->786713K(1260928K) [PSPermGen: 19076K->19076K(29184K)], 3.4611450 secs] 
584.691: [Full GC [PSYoungGen: 170752K->0K(341376K)] [PSOldGen: 786713K->786759K(919552K)] 957465K->786759K(1260928K) [PSPermGen: 19076K->19076K(27648K)], 3.4172340 secs] 

找不到我做錯了什麼。我正在使用

java version "1.7.0_51" 
Java(TM) SE Runtime Environment (build 1.7.0_51-b13) 
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode 

錯誤的標誌?

+0

標誌看起來不錯。你確定GC在運行嗎?也許它只是沒有機會開始。 – apangin

+0

好點。將運行適當的測試。 – filippo

+0

@apangin這應該是一個答案,讓它如此。 – Eugene

回答

0

好,apangin了它的權利 - 我的GC沒有足夠多的時間來運行。讓程序運行得更長一些,我已經得到了適應日誌。

0

你的旗幟看起來不錯。這個程序觸發不同的輸出:

class Foo { 
    public static void main(String[] args) { System.gc(); } 
} 

先後在日誌文件輸出像

2014-05-10T01:20:41.896+0200: 0.054: [GC (System.gc()) [PSYoungGen: 379K->352K(1024K)] 379K->360K(128512K), 0.0007776 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]