comparison src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp @ 1520:bb843ebc7c55

6919638: CMS: ExplicitGCInvokesConcurrent misinteracts with gc locker Summary: GC-locker induced concurrent full gc should be asynchronous; policy now controlled by a separate flag, which defaults to false. Reviewed-by: jmasa
author ysr
date Mon, 03 May 2010 20:19:05 -0700
parents 3bfae429e2cf
children a8127dc669ba
comparison
equal deleted inserted replaced
1519:7145628c2fa2 1520:bb843ebc7c55
1422 // hip and should be fixed by untying them. 1422 // hip and should be fixed by untying them.
1423 } 1423 }
1424 1424
1425 bool CMSCollector::shouldConcurrentCollect() { 1425 bool CMSCollector::shouldConcurrentCollect() {
1426 if (_full_gc_requested) { 1426 if (_full_gc_requested) {
1427 assert(ExplicitGCInvokesConcurrent, "Unexpected state");
1428 if (Verbose && PrintGCDetails) { 1427 if (Verbose && PrintGCDetails) {
1429 gclog_or_tty->print_cr("CMSCollector: collect because of explicit " 1428 gclog_or_tty->print_cr("CMSCollector: collect because of explicit "
1430 " gc request"); 1429 " gc request (or gc_locker)");
1431 } 1430 }
1432 return true; 1431 return true;
1433 } 1432 }
1434 1433
1435 // For debugging purposes, change the type of collection. 1434 // For debugging purposes, change the type of collection.