< prev index next >

src/share/vm/runtime/synchronizer.hpp

Print this page
rev 13387 : [mq]: parallel_sp_cleaning.patch


 127   static const char* inflate_cause_name(const InflateCause cause);
 128 
 129   // Returns the identity hash value for an oop
 130   // NOTE: It may cause monitor inflation
 131   static intptr_t identity_hash_value_for(Handle obj);
 132   static intptr_t FastHashCode(Thread * Self, oop obj);
 133 
 134   // java.lang.Thread support
 135   static bool current_thread_holds_lock(JavaThread* thread, Handle h_obj);
 136   static LockOwnership query_lock_ownership(JavaThread * self, Handle h_obj);
 137 
 138   static JavaThread* get_lock_owner(Handle h_obj, bool doLock);
 139 
 140   // JNI detach support
 141   static void release_monitors_owned_by_thread(TRAPS);
 142   static void monitors_iterate(MonitorClosure* m);
 143 
 144   // GC: we current use aggressive monitor deflation policy
 145   // Basically we deflate all monitors that are not busy.
 146   // An adaptive profile-based deflation policy could be used if needed
 147   static void deflate_idle_monitors();


 148   static void deflate_idle_monitors_and_oops_do(Thread* thread, OopClosure* cl);
 149   static void deflate_idle_monitors_all_threads();
 150 
 151   // For a given monitor list: global or per-thread, deflate idle monitors
 152   static int deflate_monitor_list(ObjectMonitor** listheadp,
 153                                   ObjectMonitor** freeHeadp,
 154                                   ObjectMonitor** freeTailp,
 155                                   OopClosure* cl = NULL);
 156   static bool deflate_monitor(ObjectMonitor* mid, oop obj,
 157                               ObjectMonitor** freeHeadp,
 158                               ObjectMonitor** freeTailp);
 159   static void oops_do(OopClosure* f);
 160   // Process oops in thread local used monitors
 161   static void thread_local_used_oops_do(Thread* thread, OopClosure* f);
 162 
 163   // Parallel GC support
 164   static ParallelObjectSynchronizerIterator parallel_iterator();
 165 
 166   // debugging
 167   static void sanity_checks(const bool verbose,




 127   static const char* inflate_cause_name(const InflateCause cause);
 128 
 129   // Returns the identity hash value for an oop
 130   // NOTE: It may cause monitor inflation
 131   static intptr_t identity_hash_value_for(Handle obj);
 132   static intptr_t FastHashCode(Thread * Self, oop obj);
 133 
 134   // java.lang.Thread support
 135   static bool current_thread_holds_lock(JavaThread* thread, Handle h_obj);
 136   static LockOwnership query_lock_ownership(JavaThread * self, Handle h_obj);
 137 
 138   static JavaThread* get_lock_owner(Handle h_obj, bool doLock);
 139 
 140   // JNI detach support
 141   static void release_monitors_owned_by_thread(TRAPS);
 142   static void monitors_iterate(MonitorClosure* m);
 143 
 144   // GC: we current use aggressive monitor deflation policy
 145   // Basically we deflate all monitors that are not busy.
 146   // An adaptive profile-based deflation policy could be used if needed
 147   // When deflate_tl is true, also deflate thread-local monitors. Otherwise only
 148   // deflate global monitors.
 149   static void deflate_idle_monitors(bool deflate_thread_local_monitors);
 150   static void deflate_idle_monitors_and_oops_do(Thread* thread, OopClosure* cl);
 151   static void deflate_idle_monitors_all_threads();
 152 
 153   // For a given monitor list: global or per-thread, deflate idle monitors
 154   static int deflate_monitor_list(ObjectMonitor** listheadp,
 155                                   ObjectMonitor** freeHeadp,
 156                                   ObjectMonitor** freeTailp,
 157                                   OopClosure* cl = NULL);
 158   static bool deflate_monitor(ObjectMonitor* mid, oop obj,
 159                               ObjectMonitor** freeHeadp,
 160                               ObjectMonitor** freeTailp);
 161   static void oops_do(OopClosure* f);
 162   // Process oops in thread local used monitors
 163   static void thread_local_used_oops_do(Thread* thread, OopClosure* f);
 164 
 165   // Parallel GC support
 166   static ParallelObjectSynchronizerIterator parallel_iterator();
 167 
 168   // debugging
 169   static void sanity_checks(const bool verbose,


< prev index next >