< prev index next >

src/hotspot/share/classfile/classLoaderDataGraph.hpp

Print this page
rev 52404 : imported patch 8213307-rmt-cleanup


  71   // Iteration through CLDG inside a safepoint; GC support
  72   static void cld_do(CLDClosure* cl);
  73   static void cld_unloading_do(CLDClosure* cl);
  74   static void roots_cld_do(CLDClosure* strong, CLDClosure* weak);
  75   static void always_strong_cld_do(CLDClosure* cl);
  76   // klass do
  77   // Walking classes through the ClassLoaderDataGraph include array classes.  It also includes
  78   // classes that are allocated but not loaded, classes that have errors, and scratch classes
  79   // for redefinition.  These classes are removed during the next class unloading.
  80   // Walking the ClassLoaderDataGraph also includes unsafe anonymous classes.
  81   static void classes_do(KlassClosure* klass_closure);
  82   static void classes_do(void f(Klass* const));
  83   static void methods_do(void f(Method*));
  84   static void modules_do(void f(ModuleEntry*));
  85   static void modules_unloading_do(void f(ModuleEntry*));
  86   static void packages_do(void f(PackageEntry*));
  87   static void packages_unloading_do(void f(PackageEntry*));
  88   static void loaded_classes_do(KlassClosure* klass_closure);
  89   static void unlocked_loaded_classes_do(KlassClosure* klass_closure);
  90   static void classes_unloading_do(void f(Klass* const));
  91   static bool do_unloading(bool do_cleaning);
  92 
  93   // Expose state to avoid logging overhead in safepoint cleanup tasks.
  94   static inline bool should_clean_metaspaces_and_reset();
  95   static void set_should_clean_deallocate_lists() { _should_clean_deallocate_lists = true; }
  96   static void clean_deallocate_lists(bool purge_previous_versions);
  97   static void walk_metadata_and_clean_metaspaces();
  98 
  99   // dictionary do
 100   // Iterate over all klasses in dictionary, but
 101   // just the classes from defining class loaders.
 102   static void dictionary_classes_do(void f(InstanceKlass*));
 103   // Added for initialize_itable_for_klass to handle exceptions.
 104   static void dictionary_classes_do(void f(InstanceKlass*, TRAPS), TRAPS);
 105 
 106   // VM_CounterDecay iteration support
 107   static InstanceKlass* try_get_next_class();
 108   static void adjust_saved_class(ClassLoaderData* cld);
 109   static void adjust_saved_class(Klass* klass);
 110 
 111   static void verify_dictionary();




  71   // Iteration through CLDG inside a safepoint; GC support
  72   static void cld_do(CLDClosure* cl);
  73   static void cld_unloading_do(CLDClosure* cl);
  74   static void roots_cld_do(CLDClosure* strong, CLDClosure* weak);
  75   static void always_strong_cld_do(CLDClosure* cl);
  76   // klass do
  77   // Walking classes through the ClassLoaderDataGraph include array classes.  It also includes
  78   // classes that are allocated but not loaded, classes that have errors, and scratch classes
  79   // for redefinition.  These classes are removed during the next class unloading.
  80   // Walking the ClassLoaderDataGraph also includes unsafe anonymous classes.
  81   static void classes_do(KlassClosure* klass_closure);
  82   static void classes_do(void f(Klass* const));
  83   static void methods_do(void f(Method*));
  84   static void modules_do(void f(ModuleEntry*));
  85   static void modules_unloading_do(void f(ModuleEntry*));
  86   static void packages_do(void f(PackageEntry*));
  87   static void packages_unloading_do(void f(PackageEntry*));
  88   static void loaded_classes_do(KlassClosure* klass_closure);
  89   static void unlocked_loaded_classes_do(KlassClosure* klass_closure);
  90   static void classes_unloading_do(void f(Klass* const));
  91   static bool do_unloading();
  92 
  93   // Expose state to avoid logging overhead in safepoint cleanup tasks.
  94   static inline bool should_clean_metaspaces_and_reset();
  95   static void set_should_clean_deallocate_lists() { _should_clean_deallocate_lists = true; }
  96   static void clean_deallocate_lists(bool purge_previous_versions);
  97   static void walk_metadata_and_clean_metaspaces();
  98 
  99   // dictionary do
 100   // Iterate over all klasses in dictionary, but
 101   // just the classes from defining class loaders.
 102   static void dictionary_classes_do(void f(InstanceKlass*));
 103   // Added for initialize_itable_for_klass to handle exceptions.
 104   static void dictionary_classes_do(void f(InstanceKlass*, TRAPS), TRAPS);
 105 
 106   // VM_CounterDecay iteration support
 107   static InstanceKlass* try_get_next_class();
 108   static void adjust_saved_class(ClassLoaderData* cld);
 109   static void adjust_saved_class(Klass* klass);
 110 
 111   static void verify_dictionary();


< prev index next >