デバッグ用(開発時用)のクラス (関連する develop オプションが指定されている場合にのみ使用される) (See: MemProfiling).
定期的にメモリ使用量をログファイル(mprofile.log)に出力するための機能を納めた名前空間(AllStatic クラス).
((cite: hotspot/src/share/vm/runtime/memprofiler.hpp))
// Prints periodic memory usage trace of HotSpot VM
((cite: hotspot/src/share/vm/runtime/memprofiler.hpp))
class MemProfiler : AllStatic {
以下の箇所で(のみ)使用されている.
Threads::create_vm() の内で MemProfiler::engage() が呼ばれて処理が開始される.
MemProfilerTask::task() で, 定期間隔で MemProfiler::do_trace() が呼ばれてログファイルへの出力が行われる.
print_statistics() の内で MemProfiler::disengage() が呼ばれて後片付けが行われる.
See: here for details
MemProfiler クラス内で使用される補助クラス.
デバッグ用(開発時用)のクラス (#ifndef PRODUCT 時にしか定義されない).
定期間隔でメモリ使用量をログファイル(mprofile.log)に出力するためのクラス(PeriodicTaskクラス).
((cite: hotspot/src/share/vm/runtime/memprofiler.cpp))
#ifndef PRODUCT
// --------------------------------------------------------
// MemProfilerTask
class MemProfilerTask : public PeriodicTask {
MemProfiler クラスの _task フィールド (static フィールド) に(のみ)格納されている.
MemProfiler::engage() 内で(のみ)生成されている.
定期間隔で MemProfiler::do_trace() を呼び出しているだけ.
See: here for details
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.