< prev index next >
src/hotspot/share/gc/cms/cmsOopClosures.inline.hpp
CLD claiming v2
CLD claiming
ClassLoaderData* cld = k->class_loader_data();
MetadataVisitingOopsInGenClosure::do_cld(cld);
}
inline void MetadataVisitingOopsInGenClosure::do_cld(ClassLoaderData* cld) {
! bool claim = true; // Must claim the class loader data before processing.
! cld->oops_do(this, claim);
}
// Decode the oop and call do_oop on it.
#define DO_OOP_WORK_IMPL(cls) \
template <class T> void cls::do_oop_work(T* p) { \
ClassLoaderData* cld = k->class_loader_data();
MetadataVisitingOopsInGenClosure::do_cld(cld);
}
inline void MetadataVisitingOopsInGenClosure::do_cld(ClassLoaderData* cld) {
! cld->oops_do(this, ClassLoaderData::_claim_strong);
}
// Decode the oop and call do_oop on it.
#define DO_OOP_WORK_IMPL(cls) \
template <class T> void cls::do_oop_work(T* p) { \
< prev index next >