8207778: Add locking to ModuleEntry and PackageEntry tables

Restructure ClassLoaderDataGraph code to simplify using locks in SystemDictionary::do_unloading()

Reviewed-by: lfoltan, coleenp
This commit is contained in:
Harold Seigel 2018-08-10 09:30:26 -04:00
parent 092e9e4f81
commit 83b2fb5b0d
7 changed files with 37 additions and 28 deletions

View file

@ -1853,6 +1853,9 @@ bool SystemDictionary::do_unloading(GCTimer* gc_timer,
// First, mark for unload all ClassLoaderData referencing a dead class loader.
unloading_occurred = ClassLoaderDataGraph::do_unloading(do_cleaning);
if (unloading_occurred) {
ClassLoaderDataGraph::clean_module_and_package_info();
}
}
if (unloading_occurred) {