< prev index next >

src/hotspot/share/classfile/classLoaderData.cpp

Print this page




1237 
1238 // Walk classes in the loaded class dictionaries in various forms.
1239 // Only walks the classes defined in this class loader.
1240 void ClassLoaderDataGraph::dictionary_classes_do(void f(InstanceKlass*)) {
1241   Thread* thread = Thread::current();
1242   FOR_ALL_DICTIONARY(cld) {
1243     Handle holder(thread, cld->holder_phantom());
1244     cld->dictionary()->classes_do(f);
1245   }
1246 }
1247 
1248 // Only walks the classes defined in this class loader.
1249 void ClassLoaderDataGraph::dictionary_classes_do(void f(InstanceKlass*, TRAPS), TRAPS) {
1250   Thread* thread = Thread::current();
1251   FOR_ALL_DICTIONARY(cld) {
1252     Handle holder(thread, cld->holder_phantom());
1253     cld->dictionary()->classes_do(f, CHECK);
1254   }
1255 }
1256 
1257 // Walks all entries in the dictionary including entries initiated by this class loader.
1258 void ClassLoaderDataGraph::dictionary_all_entries_do(void f(InstanceKlass*, ClassLoaderData*)) {
1259   Thread* thread = Thread::current();
1260   FOR_ALL_DICTIONARY(cld) {
1261     Handle holder(thread, cld->holder_phantom());
1262     cld->dictionary()->all_entries_do(f);
1263   }
1264 }
1265 
1266 void ClassLoaderDataGraph::verify_dictionary() {
1267   FOR_ALL_DICTIONARY(cld) {
1268     cld->dictionary()->verify();
1269   }
1270 }
1271 
1272 void ClassLoaderDataGraph::print_dictionary(outputStream* st) {
1273   FOR_ALL_DICTIONARY(cld) {
1274     st->print("Dictionary for ");
1275     cld->print_value_on(st);
1276     st->cr();
1277     cld->dictionary()->print_on(st);
1278     st->cr();
1279   }
1280 }
1281 
1282 void ClassLoaderDataGraph::print_dictionary_statistics(outputStream* st) {
1283   FOR_ALL_DICTIONARY(cld) {
1284     ResourceMark rm;
1285     stringStream tempst;




1237 
1238 // Walk classes in the loaded class dictionaries in various forms.
1239 // Only walks the classes defined in this class loader.
1240 void ClassLoaderDataGraph::dictionary_classes_do(void f(InstanceKlass*)) {
1241   Thread* thread = Thread::current();
1242   FOR_ALL_DICTIONARY(cld) {
1243     Handle holder(thread, cld->holder_phantom());
1244     cld->dictionary()->classes_do(f);
1245   }
1246 }
1247 
1248 // Only walks the classes defined in this class loader.
1249 void ClassLoaderDataGraph::dictionary_classes_do(void f(InstanceKlass*, TRAPS), TRAPS) {
1250   Thread* thread = Thread::current();
1251   FOR_ALL_DICTIONARY(cld) {
1252     Handle holder(thread, cld->holder_phantom());
1253     cld->dictionary()->classes_do(f, CHECK);
1254   }
1255 }
1256 









1257 void ClassLoaderDataGraph::verify_dictionary() {
1258   FOR_ALL_DICTIONARY(cld) {
1259     cld->dictionary()->verify();
1260   }
1261 }
1262 
1263 void ClassLoaderDataGraph::print_dictionary(outputStream* st) {
1264   FOR_ALL_DICTIONARY(cld) {
1265     st->print("Dictionary for ");
1266     cld->print_value_on(st);
1267     st->cr();
1268     cld->dictionary()->print_on(st);
1269     st->cr();
1270   }
1271 }
1272 
1273 void ClassLoaderDataGraph::print_dictionary_statistics(outputStream* st) {
1274   FOR_ALL_DICTIONARY(cld) {
1275     ResourceMark rm;
1276     stringStream tempst;


< prev index next >