< prev index next >
src/share/vm/memory/genCollectedHeap.cpp
Print this page
*** 347,359 ****
bool GenCollectedHeap::must_clear_all_soft_refs() {
return _gc_cause == GCCause::_last_ditch_collection;
}
bool GenCollectedHeap::should_do_concurrent_full_gc(GCCause::Cause cause) {
! return UseConcMarkSweepGC &&
! ((cause == GCCause::_gc_locker && GCLockerInvokesConcurrent) ||
! (cause == GCCause::_java_lang_system_gc && ExplicitGCInvokesConcurrent));
}
void GenCollectedHeap::do_collection(bool full,
bool clear_all_soft_refs,
size_t size,
--- 347,366 ----
bool GenCollectedHeap::must_clear_all_soft_refs() {
return _gc_cause == GCCause::_last_ditch_collection;
}
bool GenCollectedHeap::should_do_concurrent_full_gc(GCCause::Cause cause) {
! if (!UseConcMarkSweepGC) {
! return false;
! }
!
! switch (cause) {
! case GCCause::_gc_locker: return GCLockerInvokesConcurrent;
! case GCCause::_java_lang_system_gc:
! case GCCause::_dcmd_gc_run: return ExplicitGCInvokesConcurrent;
! default: return false;
! }
}
void GenCollectedHeap::do_collection(bool full,
bool clear_all_soft_refs,
size_t size,
< prev index next >