hotspot/src/share/vm/memory/oopFactory.cpp
constantPoolOop oopFactory::new_constantPool(int length,
bool is_conc_safe,
TRAPS) {
{- -------------------------------------------
(1) constantPoolKlass::allocate() を呼び出すことでメモリ領域を確保
(なお, constantPoolKlass 自体は初期化時に Universe に作成済み. Universe::genesis() 参照.
constantPoolKlass::cast() は, constatntPoolKlassOop から constantPoolKlass を取得する関数(klass_part を返す関数))
---------------------------------------- -}
constantPoolKlass* ck = constantPoolKlass::cast(Universe::constantPoolKlassObj());
return ck->allocate(length, is_conc_safe, CHECK_NULL);
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.