278 } |
278 } |
279 |
279 |
280 void ClassLoaderData::unload() { |
280 void ClassLoaderData::unload() { |
281 _unloading = true; |
281 _unloading = true; |
282 |
282 |
|
283 // Tell serviceability tools these classes are unloading |
|
284 classes_do(InstanceKlass::notify_unload_class); |
|
285 |
283 if (TraceClassLoaderData) { |
286 if (TraceClassLoaderData) { |
284 ResourceMark rm; |
287 ResourceMark rm; |
285 tty->print("[ClassLoaderData: unload loader data "PTR_FORMAT, this); |
288 tty->print("[ClassLoaderData: unload loader data "PTR_FORMAT, this); |
286 tty->print(" for instance "PTR_FORMAT" of %s", class_loader(), |
289 tty->print(" for instance "PTR_FORMAT" of %s", class_loader(), |
287 loader_name()); |
290 loader_name()); |