< prev index next >

src/hotspot/share/oops/instanceKlass.hpp

Print this page




1163   void clean_implementors_list();
1164   void clean_method_data();
1165 
1166  public:
1167   // Explicit metaspace deallocation of fields
1168   // For RedefineClasses and class file parsing errors, we need to deallocate
1169   // instanceKlasses and the metadata they point to.
1170   void deallocate_contents(ClassLoaderData* loader_data);
1171   static void deallocate_methods(ClassLoaderData* loader_data,
1172                                  Array<Method*>* methods);
1173   void static deallocate_interfaces(ClassLoaderData* loader_data,
1174                                     const Klass* super_klass,
1175                                     Array<InstanceKlass*>* local_interfaces,
1176                                     Array<InstanceKlass*>* transitive_interfaces);
1177 
1178   // The constant pool is on stack if any of the methods are executing or
1179   // referenced by handles.
1180   bool on_stack() const { return _constants->on_stack(); }
1181 
1182   // callbacks for actions during class unloading
1183   static void notify_unload_class(InstanceKlass* ik);
1184   static void release_C_heap_structures(InstanceKlass* ik);
1185 
1186   // Naming
1187   const char* signature_name() const;
1188   static Symbol* package_from_name(const Symbol* name, TRAPS);
1189 
1190   // GC specific object visitors
1191   //
1192 #if INCLUDE_PARALLELGC
1193   // Parallel Scavenge
1194   void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
1195   // Parallel Compact
1196   void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1197   void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1198 #endif
1199 
1200   // Oop fields (and metadata) iterators
1201   //
1202   // The InstanceKlass iterators also visits the Object's klass.
1203 




1163   void clean_implementors_list();
1164   void clean_method_data();
1165 
1166  public:
1167   // Explicit metaspace deallocation of fields
1168   // For RedefineClasses and class file parsing errors, we need to deallocate
1169   // instanceKlasses and the metadata they point to.
1170   void deallocate_contents(ClassLoaderData* loader_data);
1171   static void deallocate_methods(ClassLoaderData* loader_data,
1172                                  Array<Method*>* methods);
1173   void static deallocate_interfaces(ClassLoaderData* loader_data,
1174                                     const Klass* super_klass,
1175                                     Array<InstanceKlass*>* local_interfaces,
1176                                     Array<InstanceKlass*>* transitive_interfaces);
1177 
1178   // The constant pool is on stack if any of the methods are executing or
1179   // referenced by handles.
1180   bool on_stack() const { return _constants->on_stack(); }
1181 
1182   // callbacks for actions during class unloading
1183   static void unload_class(InstanceKlass* ik);
1184   static void release_C_heap_structures(InstanceKlass* ik);
1185 
1186   // Naming
1187   const char* signature_name() const;
1188   static Symbol* package_from_name(const Symbol* name, TRAPS);
1189 
1190   // GC specific object visitors
1191   //
1192 #if INCLUDE_PARALLELGC
1193   // Parallel Scavenge
1194   void oop_ps_push_contents(  oop obj, PSPromotionManager* pm);
1195   // Parallel Compact
1196   void oop_pc_follow_contents(oop obj, ParCompactionManager* cm);
1197   void oop_pc_update_pointers(oop obj, ParCompactionManager* cm);
1198 #endif
1199 
1200   // Oop fields (and metadata) iterators
1201   //
1202   // The InstanceKlass iterators also visits the Object's klass.
1203 


< prev index next >