hotspot/src/share/vm/prims/jvmtiImpl.cpp
void GrowableCache::gc_epilogue() {
{- -------------------------------------------
(1) _cache 内の全てのアドレスについて, GrowableElement::getCacheValue() で新しいアドレスを取り直しておく.
(普通のポインタであれば GC 中の oops_do() 等の処理で更新されているが,
GrowableCache の _cache 内のアドレスについては誰も修正処理をしていないので,
ここで別途処理する必要がある, のだと思われる.)
(See: GrowableElement, GrowableCache)
---------------------------------------- -}
int len = _elements->length();
for (int i=0; i<len; i++) {
_cache[i] = _elements->at(i)->getCacheValue();
}
}
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.