hotspot/src/share/vm/gc/g1/g1ConcurrentMark.cpp
changeset 46505 fd4bc78630b1
parent 46447 dbb55d89699c
child 46573 0f8fae16c5b4
equal deleted inserted replaced
46504:38048d4d20e7 46505:fd4bc78630b1
  1750   assert(_global_mark_stack.is_empty(), "Marking should have completed");
  1750   assert(_global_mark_stack.is_empty(), "Marking should have completed");
  1751 
  1751 
  1752   // Unload Klasses, String, Symbols, Code Cache, etc.
  1752   // Unload Klasses, String, Symbols, Code Cache, etc.
  1753   if (ClassUnloadingWithConcurrentMark) {
  1753   if (ClassUnloadingWithConcurrentMark) {
  1754     GCTraceTime(Debug, gc, phases) debug("Class Unloading", _gc_timer_cm);
  1754     GCTraceTime(Debug, gc, phases) debug("Class Unloading", _gc_timer_cm);
  1755     bool purged_classes = SystemDictionary::do_unloading(&g1_is_alive, false /* Defer klass cleaning */);
  1755     bool purged_classes = SystemDictionary::do_unloading(&g1_is_alive, _gc_timer_cm, false /* Defer cleaning */);
  1756     g1h->complete_cleaning(&g1_is_alive, purged_classes);
  1756     g1h->complete_cleaning(&g1_is_alive, purged_classes);
  1757   } else {
  1757   } else {
  1758     GCTraceTime(Debug, gc, phases) debug("Cleanup", _gc_timer_cm);
  1758     GCTraceTime(Debug, gc, phases) debug("Cleanup", _gc_timer_cm);
  1759     // No need to clean string table and symbol table as they are treated as strong roots when
  1759     // No need to clean string table and symbol table as they are treated as strong roots when
  1760     // class unloading is disabled.
  1760     // class unloading is disabled.