src/hotspot/share/runtime/threadSMR.hpp
changeset 52448 bc5c7f63dbae
parent 49956 a87f2e7a527c
child 52452 3315e47741c7
equal deleted inserted replaced
52447:4547f8303f2d 52448:bc5c7f63dbae
    89   friend class SafeThreadsListPtr;  // for _nested_thread_list_max, delete_notify(), release_stable_list_wake_up() access
    89   friend class SafeThreadsListPtr;  // for _nested_thread_list_max, delete_notify(), release_stable_list_wake_up() access
    90 
    90 
    91   // The coordination between ThreadsSMRSupport::release_stable_list() and
    91   // The coordination between ThreadsSMRSupport::release_stable_list() and
    92   // ThreadsSMRSupport::smr_delete() uses the delete_lock in order to
    92   // ThreadsSMRSupport::smr_delete() uses the delete_lock in order to
    93   // reduce the traffic on the Threads_lock.
    93   // reduce the traffic on the Threads_lock.
    94   static Monitor*              _delete_lock;
    94   static Monitor* delete_lock() { return ThreadsSMRDelete_lock; }
       
    95 
    95   // The '_cnt', '_max' and '_times" fields are enabled via
    96   // The '_cnt', '_max' and '_times" fields are enabled via
    96   // -XX:+EnableThreadSMRStatistics (see thread.cpp for a
    97   // -XX:+EnableThreadSMRStatistics (see thread.cpp for a
    97   // description about each field):
    98   // description about each field):
    98   static uint                  _delete_lock_wait_cnt;
    99   static uint                  _delete_lock_wait_cnt;
    99   static uint                  _delete_lock_wait_max;
   100   static uint                  _delete_lock_wait_max;
   119   static ThreadsList *acquire_stable_list_fast_path(Thread *self);
   120   static ThreadsList *acquire_stable_list_fast_path(Thread *self);
   120   static ThreadsList *acquire_stable_list_nested_path(Thread *self);
   121   static ThreadsList *acquire_stable_list_nested_path(Thread *self);
   121   static void add_deleted_thread_times(uint add_value);
   122   static void add_deleted_thread_times(uint add_value);
   122   static void add_tlh_times(uint add_value);
   123   static void add_tlh_times(uint add_value);
   123   static void clear_delete_notify();
   124   static void clear_delete_notify();
   124   static Monitor* delete_lock() { return _delete_lock; }
       
   125   static bool delete_notify();
   125   static bool delete_notify();
   126   static void free_list(ThreadsList* threads);
   126   static void free_list(ThreadsList* threads);
   127   static void inc_deleted_thread_cnt();
   127   static void inc_deleted_thread_cnt();
   128   static void inc_java_thread_list_alloc_cnt();
   128   static void inc_java_thread_list_alloc_cnt();
   129   static void inc_tlh_cnt();
   129   static void inc_tlh_cnt();