src/hotspot/share/classfile/classLoaderData.hpp
changeset 48873 9536c39ac6de
parent 48871 120d6893f32f
child 48874 f09fdaad7321
--- a/src/hotspot/share/classfile/classLoaderData.hpp	Tue Feb 06 18:10:30 2018 -0500
+++ b/src/hotspot/share/classfile/classLoaderData.hpp	Tue Feb 06 08:24:36 2018 -0500
@@ -80,6 +80,9 @@
   // allocations until class unloading
   static bool _metaspace_oom;
 
+  static volatile size_t  _num_instance_classes;
+  static volatile size_t  _num_array_classes;
+
   static ClassLoaderData* add(Handle class_loader, bool anonymous, TRAPS);
   static void post_class_unload_events();
  public:
@@ -154,6 +157,15 @@
   static void print_creation(outputStream* out, Handle loader, ClassLoaderData* cld, TRAPS);
 
   static bool unload_list_contains(const void* x);
+
+  // instance and array class counters
+  static inline size_t num_instance_classes();
+  static inline size_t num_array_classes();
+  static inline void inc_instance_classes(size_t count);
+  static inline void dec_instance_classes(size_t count);
+  static inline void inc_array_classes(size_t count);
+  static inline void dec_array_classes(size_t count);
+
 #ifndef PRODUCT
   static bool contains_loader_data(ClassLoaderData* loader_data);
 #endif