Top


定義場所(file name)

hotspot/src/share/vm/memory/permGen.cpp

名前(function name)

CompactingPermGen::CompactingPermGen(ReservedSpace rs,
                                     ReservedSpace shared_rs,
                                     size_t initial_byte_size,
                                     GenRemSet* remset,
                                     PermanentGenerationSpec* perm_spec)
{

本体部(body)

  {- -------------------------------------------
  (1) 新しい CompactingPermGenGen オブジェクトを生成し, _gen フィールドにセットする.

      (もし失敗したら, ここで異常終了させる)
      ---------------------------------------- -}

      CompactingPermGenGen* g =
        new CompactingPermGenGen(rs, shared_rs, initial_byte_size, -1, remset,
                                 NULL, perm_spec);
      if (g == NULL)
        vm_exit_during_initialization("Could not allocate a CompactingPermGen");
      _gen = g;

  {- -------------------------------------------
  (1) CompactingPermGenGen::initialize_performance_counters() を呼び出して, 
      CompactingPermGenGen 内の初期化を行う.
      ---------------------------------------- -}

      g->initialize_performance_counters();

  {- -------------------------------------------
  (1) フィールドの初期化
      ---------------------------------------- -}

      _capacity_expansion_limit = g->capacity() + MaxPermHeapExpansion;
    }

This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.