hotspot/src/share/vm/runtime/objectMonitor.hpp
changeset 32614 b7b2407bc7e5
parent 31856 614d6786ba55
child 39702 ea7e9375bb93
equal deleted inserted replaced
32613:73bec9f941d7 32614:b7b2407bc7e5
   175  private:
   175  private:
   176   volatile int _WaitSetLock;        // protects Wait Queue - simple spinlock
   176   volatile int _WaitSetLock;        // protects Wait Queue - simple spinlock
   177 
   177 
   178  public:
   178  public:
   179   static void Initialize();
   179   static void Initialize();
       
   180 
       
   181   // Only perform a PerfData operation if the PerfData object has been
       
   182   // allocated and if the PerfDataManager has not freed the PerfData
       
   183   // objects which can happen at normal VM shutdown.
       
   184   //
       
   185   #define OM_PERFDATA_OP(f, op_str)              \
       
   186     do {                                         \
       
   187       if (ObjectMonitor::_sync_ ## f != NULL &&  \
       
   188           PerfDataManager::has_PerfData()) {     \
       
   189         ObjectMonitor::_sync_ ## f->op_str;      \
       
   190       }                                          \
       
   191     } while (0)
       
   192 
   180   static PerfCounter * _sync_ContendedLockAttempts;
   193   static PerfCounter * _sync_ContendedLockAttempts;
   181   static PerfCounter * _sync_FutileWakeups;
   194   static PerfCounter * _sync_FutileWakeups;
   182   static PerfCounter * _sync_Parks;
   195   static PerfCounter * _sync_Parks;
   183   static PerfCounter * _sync_EmptyNotifications;
   196   static PerfCounter * _sync_EmptyNotifications;
   184   static PerfCounter * _sync_Notifications;
   197   static PerfCounter * _sync_Notifications;