69 static ClassLoaderData* _saved_unloading; |
69 static ClassLoaderData* _saved_unloading; |
70 static bool _should_purge; |
70 static bool _should_purge; |
71 |
71 |
72 static ClassLoaderData* add(Handle class_loader, bool anonymous, TRAPS); |
72 static ClassLoaderData* add(Handle class_loader, bool anonymous, TRAPS); |
73 static void post_class_unload_events(void); |
73 static void post_class_unload_events(void); |
|
74 static void clean_metaspaces(); |
74 public: |
75 public: |
75 static ClassLoaderData* find_or_create(Handle class_loader, TRAPS); |
76 static ClassLoaderData* find_or_create(Handle class_loader, TRAPS); |
76 static void purge(); |
77 static void purge(); |
77 static void clear_claimed_marks(); |
78 static void clear_claimed_marks(); |
78 // oops do |
79 // oops do |
87 // klass do |
88 // klass do |
88 static void classes_do(KlassClosure* klass_closure); |
89 static void classes_do(KlassClosure* klass_closure); |
89 static void classes_do(void f(Klass* const)); |
90 static void classes_do(void f(Klass* const)); |
90 static void loaded_classes_do(KlassClosure* klass_closure); |
91 static void loaded_classes_do(KlassClosure* klass_closure); |
91 static void classes_unloading_do(void f(Klass* const)); |
92 static void classes_unloading_do(void f(Klass* const)); |
92 static bool do_unloading(BoolObjectClosure* is_alive); |
93 static bool do_unloading(BoolObjectClosure* is_alive, bool clean_alive); |
93 |
94 |
94 // CMS support. |
95 // CMS support. |
95 static void remember_new_clds(bool remember) { _saved_head = (remember ? _head : NULL); } |
96 static void remember_new_clds(bool remember) { _saved_head = (remember ? _head : NULL); } |
96 static GrowableArray<ClassLoaderData*>* new_clds(); |
97 static GrowableArray<ClassLoaderData*>* new_clds(); |
97 |
98 |
102 purge(); |
103 purge(); |
103 // reset for next time. |
104 // reset for next time. |
104 set_should_purge(false); |
105 set_should_purge(false); |
105 } |
106 } |
106 } |
107 } |
|
108 |
|
109 static void free_deallocate_lists(); |
107 |
110 |
108 static void dump_on(outputStream * const out) PRODUCT_RETURN; |
111 static void dump_on(outputStream * const out) PRODUCT_RETURN; |
109 static void dump() { dump_on(tty); } |
112 static void dump() { dump_on(tty); } |
110 static void verify(); |
113 static void verify(); |
111 |
114 |