偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

學(xué)習(xí)筆記 JVM Log技術(shù)簡介

開發(fā) 后端
你對JVM Log是否了解,它是指Java虛擬機(jī)的Log日志,JVM在調(diào)試版本下,會輸出hotspot.JVM Log。通過參數(shù)-XJVM Loggc:FileName,來設(shè)置GC的JVM Log。

本文向大家簡單介紹一下JVM Log的概念,初始化和釋放,JVM Log各個class的實(shí)現(xiàn)除了很自然地運(yùn)用了繼承,同時運(yùn)用重載new/deleteoperator這個C++特有的技巧,也 有效地封裝了JVM Log的創(chuàng)建和釋放功能。

JVM Log簡介

JVM在調(diào)試版本下,會輸出hotspot.JVM Log。通過參數(shù)-XJVM Loggc:FileName,來設(shè)置GC的JVM Log。

JVM Log的實(shí)現(xiàn)主要在

  1. \hotspot\src\share\vm\utilities\ostream.hpp  
  2. \hotspot\src\share\vm\utilities\ostream.cpp  
  3. \hotspot\src\share\vm\utilities\xmlstream.hpp  
  4. \hotspot\src\share\vm\utilities\xmlstream.cpp  
  5. \hotspot\src\share\vm\utilities\defaultStream.hpp  
  6.  

主要的class是:outputStream、fileStream、xmlTextStream、defaultStream

繼承關(guān)系是:

ResourceObj
  |
  |-- outputStream
       |
       |--- fileStream
       |
       |--- xmlTextStream
             |
             |--- defaultStream

defaultStream::instance是其他模塊調(diào)用的主要接口。

JVM Log的初始化

ostream_init()初始化defaultStream::instance
ostream_init_JVM Log()初始化JVM的DebugJVM Log和GC的JVM Log,
其中其核心代碼是:defaultStream::instance->has_JVM Log_file();它轉(zhuǎn)而調(diào)用voiddefaultStream::init_JVM Log();這是真正干活的代碼了。
defaultStream::init_JVM Log的代碼寫的很清晰,其中只有一個C++的語法點(diǎn)需要注意:重載newoperator。

ostream.cppline346
fileStream*file=new(ResourceObj::C_HEAP)fileStream(try_name);
這是因為outputStream的父類是ResourceObj,ResourceObj重載了new和deleteoperator。關(guān)于C++語法就不多說了,太多的好書論及了這個問題。

JVM Log的最終釋放

Threads::destroy_vm()
   |
   |--> exit_globals()
         |
         |--> ostream_exit()
              |
              |--> 用delete operator釋放掉各個JVM Log

總結(jié)

JVM Log各個class的實(shí)現(xiàn)除了很自然地運(yùn)用了繼承,同時運(yùn)用重載new/deleteoperator這個C++特有的技巧,也 有效地封裝了JVM Log的創(chuàng)建和釋放功能。

【編輯推薦】

  1. 新一代JVM垃圾回收算法出爐
  2. 探究JVM1.6與JVM1.5性能差距
  3. JVM監(jiān)控在本地和遠(yuǎn)程的應(yīng)用
  4. JVM參數(shù)設(shè)置使用技巧
  5. JVM啟動參數(shù)中標(biāo)準(zhǔn)參數(shù)列表速查手冊
責(zé)任編輯:佚名 來源: javaeye.com
相關(guān)推薦

2010-09-27 10:11:54

JVMLinux

2010-09-26 16:55:31

JVM學(xué)習(xí)筆記

2010-09-27 15:26:17

JVM for Lin

2010-07-15 18:04:20

Perl模式

2010-07-19 16:47:54

Perl

2010-06-08 15:59:38

UML建模工具

2010-06-28 17:14:20

UML類圖符號

2024-01-16 14:08:06

Linux系統(tǒng)數(shù)據(jù)

2009-10-27 09:35:58

ADSL接入技術(shù)

2009-10-29 10:48:51

光纖接入技術(shù)

2009-10-28 10:55:27

2009-10-30 09:42:39

Internet接入技

2009-10-27 11:34:36

無線接入技術(shù)

2009-09-25 10:10:52

Linux學(xué)習(xí)Linux目錄簡介

2010-07-05 15:15:25

UML9種圖

2009-10-26 10:31:20

linux庫

2010-06-18 17:49:34

UML面向?qū)ο蠹夹g(shù)

2009-11-11 09:23:38

ADO.NET Con

2009-11-10 16:41:13

2009-10-28 10:41:49

寬帶接入技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號