< prev index next >

src/hotspot/share/runtime/thread.hpp

Print this page
rev 47862 : imported patch 10.07.open.rebase_20171110.dcubed
rev 47865 : dholmes CR: Fix indents, trailing spaces and various typos. Add descriptions for the '_cnt', '_max' and '_times" fields, add impl notes to document the type choices.

@@ -2128,28 +2128,43 @@
  private:
   // Safe Memory Reclamation (SMR) support:
   static Monitor*              _smr_delete_lock;
   // The '_cnt', '_max' and '_times" fields are enabled via
   // -XX:+EnableThreadSMRStatistics:
+                                       // # of parallel threads in _smr_delete_lock->wait().
   static uint                  _smr_delete_lock_wait_cnt;
+                                       // Max # of parallel threads in _smr_delete_lock->wait().
   static uint                  _smr_delete_lock_wait_max;
-  static volatile jint         _smr_delete_notify;
-  static volatile jint         _smr_deleted_thread_cnt;
-  static volatile jint         _smr_deleted_thread_time_max;
-  static volatile jint         _smr_deleted_thread_times;
+                                       // Flag to indicate when an _smr_delete_lock->notify() is needed.
+  static volatile uint         _smr_delete_notify;
+                                       // # of threads deleted over VM lifetime.
+  static volatile uint         _smr_deleted_thread_cnt;
+                                       // Max time in millis to delete a thread.
+  static volatile uint         _smr_deleted_thread_time_max;
+                                       // Cumulative time in millis to delete threads.
+  static volatile uint         _smr_deleted_thread_times;
   static ThreadsList* volatile _smr_java_thread_list;
   static ThreadsList*          get_smr_java_thread_list();
   static ThreadsList*          xchg_smr_java_thread_list(ThreadsList* new_list);
-  static long                  _smr_java_thread_list_alloc_cnt;
-  static long                  _smr_java_thread_list_free_cnt;
+                                       // # of ThreadsLists allocated over VM lifetime.
+  static uint64_t              _smr_java_thread_list_alloc_cnt;
+                                       // # of ThreadsLists freed over VM lifetime.
+  static uint64_t              _smr_java_thread_list_free_cnt;
+                                       // Max size ThreadsList allocated.
   static uint                  _smr_java_thread_list_max;
+                                       // Max # of nested ThreadsLists for a thread.
   static uint                  _smr_nested_thread_list_max;
-  static volatile jint         _smr_tlh_cnt;
-  static volatile jint         _smr_tlh_time_max;
-  static volatile jint         _smr_tlh_times;
+                                       // # of ThreadsListHandles deleted over VM lifetime.
+  static volatile uint         _smr_tlh_cnt;
+                                       // Max time in millis to delete a ThreadsListHandle.
+  static volatile uint         _smr_tlh_time_max;
+                                       // Cumulative time in millis to delete ThreadsListHandles.
+  static volatile uint         _smr_tlh_times;
   static ThreadsList*          _smr_to_delete_list;
+                                       // # of parallel ThreadsLists on the to-delete list.
   static uint                  _smr_to_delete_list_cnt;
+                                       // Max # of parallel ThreadsLists on the to-delete list.
   static uint                  _smr_to_delete_list_max;
 
   static JavaThread*           _thread_list;
   static int                   _number_of_threads;
   static int                   _number_of_non_daemon_threads;

@@ -2197,15 +2212,15 @@
   // locking in order to reduce the traffic on the smr_delete_lock.
   static bool smr_delete_notify();
   static void set_smr_delete_notify();
   static void clear_smr_delete_notify();
   static void inc_smr_deleted_thread_cnt();
-  static void update_smr_deleted_thread_time_max(jint new_value);
-  static void add_smr_deleted_thread_times(jint add_value);
+  static void update_smr_deleted_thread_time_max(uint new_value);
+  static void add_smr_deleted_thread_times(uint add_value);
   static void inc_smr_tlh_cnt();
-  static void update_smr_tlh_time_max(jint new_value);
-  static void add_smr_tlh_times(jint add_value);
+  static void update_smr_tlh_time_max(uint new_value);
+  static void add_smr_tlh_times(uint add_value);
 
   // Initializes the vm and creates the vm thread
   static jint create_vm(JavaVMInitArgs* args, bool* canTryAgain);
   static void convert_vm_init_libraries_to_agents();
   static void create_vm_init_libraries();
< prev index next >