保守運用機能のためのクラス (PerfData 管理用のクラス. UsePerfData オプションが指定されている場合にのみ使用される) (See: here for details).
PerfData 用の shared memory file ("hsperfdata" ファイル) を管理する機能を納めた名前空間(AllStatic クラス).
((cite: hotspot/src/share/vm/runtime/perfMemory.hpp))
/* the PerfMemory class manages creation, destruction,
* and allocation of the PerfData region.
*/
class PerfMemory : AllStatic {
以下の箇所で(のみ)使用されている.
* hsperfdata ファイルを作成する処理 (HotSpot の起動時処理) (See: here for details) -> Threads::create_vm() -> vm_init_globals() -> perfMemory_init() -> PerfMemory::initialize() * hsperfdata ファイルの初期化完了を宣言する処理 (PerfDataPrologue::accessible フィールドを true に変更する処理. sun.jvmstat.perfdata.monitor.v2_0.isAccessible() が true を返すようになる.) (HotSpot の起動時処理) (See: here for details) -> Threads::create_vm() -> TraceVmCreationTime::end() -> Management::record_vm_startup_time() -> PerfMemory::set_accessible() * PerfData を生成する処理 PerfLong::PerfLong() -> PerfData::create_entry() -> PerfMemory::alloc() -> PerfMemory::mark_updated() PerfByteArray::PerfByteArray() -> PerfData::create_entry() -> (同上) * hsperfdata ファイルを破棄する処理 (略) (See: here for details) -> perfMemory_exit() -> PerfMemory::destroy() * 他 HotSpot の hsperfdata ファイルにアタッチする処理 sun.misc.Perf.attach() -> Perf_Attach() -> PerfMemory::attach() * 他 HotSpot の hsperfdata ファイルからデタッチする処理 sun.misc.Perf.detach() -> Perf_Detach() -> PerfMemory::detach()
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.