< prev index next >

src/share/vm/runtime/interfaceSupport.cpp

Print this page
rev 12310 : [mq]: gcinterface.patch

*** 94,105 **** // Release dummy so objects are forced to move if (!Universe::release_fullgc_alot_dummy()) { warning("FullGCALot: Unable to release more dummies at bottom of heap"); } HandleMark hm(thread); ! Universe::heap()->collect(GCCause::_full_gc_alot); ! unsigned int invocations = Universe::heap()->total_full_collections(); // Compute new interval if (FullGCALotInterval > 1) { _fullgc_alot_counter = 1+(long)((double)FullGCALotInterval*os::random()/(max_jint+1.0)); log_trace(gc)("Full gc no: %u\tInterval: %ld", invocations, _fullgc_alot_counter); } else { --- 94,105 ---- // Release dummy so objects are forced to move if (!Universe::release_fullgc_alot_dummy()) { warning("FullGCALot: Unable to release more dummies at bottom of heap"); } HandleMark hm(thread); ! GC::gc()->heap()->collect(GCCause::_full_gc_alot); ! unsigned int invocations = GC::gc()->heap()->total_full_collections(); // Compute new interval if (FullGCALotInterval > 1) { _fullgc_alot_counter = 1+(long)((double)FullGCALotInterval*os::random()/(max_jint+1.0)); log_trace(gc)("Full gc no: %u\tInterval: %ld", invocations, _fullgc_alot_counter); } else {
*** 112,123 **** } else { if (ScavengeALot) _scavenge_alot_counter--; // Check if we should force a scavenge if (_scavenge_alot_counter == 0) { HandleMark hm(thread); ! Universe::heap()->collect(GCCause::_scavenge_alot); ! unsigned int invocations = Universe::heap()->total_collections() - Universe::heap()->total_full_collections(); // Compute new interval if (ScavengeALotInterval > 1) { _scavenge_alot_counter = 1+(long)((double)ScavengeALotInterval*os::random()/(max_jint+1.0)); log_trace(gc)("Scavenge no: %u\tInterval: %ld", invocations, _scavenge_alot_counter); } else { --- 112,123 ---- } else { if (ScavengeALot) _scavenge_alot_counter--; // Check if we should force a scavenge if (_scavenge_alot_counter == 0) { HandleMark hm(thread); ! GC::gc()->heap()->collect(GCCause::_scavenge_alot); ! unsigned int invocations = GC::gc()->heap()->total_collections() - GC::gc()->heap()->total_full_collections(); // Compute new interval if (ScavengeALotInterval > 1) { _scavenge_alot_counter = 1+(long)((double)ScavengeALotInterval*os::random()/(max_jint+1.0)); log_trace(gc)("Scavenge no: %u\tInterval: %ld", invocations, _scavenge_alot_counter); } else {
< prev index next >