Mercurial > hg > graal-compiler
comparison src/share/vm/classfile/classLoaderData.hpp @ 20619:b12a2a9b05ca
8056240: Investigate increased GC remark time after class unloading changes in CRM Fuse
Reviewed-by: mgerdin, coleenp, bdelsart
author | stefank |
---|---|
date | Thu, 02 Oct 2014 10:55:36 +0200 |
parents | 2c6ef90f030a |
children | 82d3e7b5277a |
comparison
equal
deleted
inserted
replaced
20618:7024b693c8f9 | 20619:b12a2a9b05ca |
---|---|
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 |