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
|