< prev index next >
src/hotspot/share/classfile/classLoaderData.inline.hpp
Print this page
@@ -25,10 +25,11 @@
#ifndef SHARE_VM_CLASSFILE_CLASSLOADERDATA_INLINE_HPP
#define SHARE_VM_CLASSFILE_CLASSLOADERDATA_INLINE_HPP
#include "classfile/classLoaderData.hpp"
#include "classfile/javaClasses.hpp"
+#include "oops/instanceKlass.hpp"
#include "oops/oop.inline.hpp"
#include "oops/oopHandle.inline.hpp"
#include "oops/weakHandle.inline.hpp"
inline oop ClassLoaderData::class_loader() const {
@@ -90,6 +91,12 @@
void ClassLoaderDataGraph::dec_array_classes(size_t count) {
assert(count <= _num_array_classes, "Sanity");
Atomic::sub(count, &_num_array_classes);
}
+bool ClassLoaderDataGraph::should_clean_metaspaces() {
+ bool do_cleaning = _safepoint_cleanup_needed;
+ _safepoint_cleanup_needed = false; // reset
+ return (do_cleaning && _should_clean_deallocate_lists) || InstanceKlass::has_previous_versions();
+}
+
#endif // SHARE_VM_CLASSFILE_CLASSLOADERDATA_INLINE_HPP
< prev index next >