src/hotspot/share/runtime/synchronizer.hpp
changeset 47634 6a0c42c40cd1
parent 47216 71c04702a3d5
child 48105 8d15b1369c7a
equal deleted inserted replaced
47633:1c21c60f51bf 47634:6a0c42c40cd1
    23  */
    23  */
    24 
    24 
    25 #ifndef SHARE_VM_RUNTIME_SYNCHRONIZER_HPP
    25 #ifndef SHARE_VM_RUNTIME_SYNCHRONIZER_HPP
    26 #define SHARE_VM_RUNTIME_SYNCHRONIZER_HPP
    26 #define SHARE_VM_RUNTIME_SYNCHRONIZER_HPP
    27 
    27 
       
    28 #include "memory/padded.hpp"
    28 #include "oops/markOop.hpp"
    29 #include "oops/markOop.hpp"
    29 #include "runtime/basicLock.hpp"
    30 #include "runtime/basicLock.hpp"
    30 #include "runtime/handles.hpp"
    31 #include "runtime/handles.hpp"
    31 #include "runtime/perfData.hpp"
    32 #include "runtime/perfData.hpp"
    32 
    33 
   157   static int  verify_objmon_isinpool(ObjectMonitor *addr) PRODUCT_RETURN0;
   158   static int  verify_objmon_isinpool(ObjectMonitor *addr) PRODUCT_RETURN0;
   158 
   159 
   159  private:
   160  private:
   160   enum { _BLOCKSIZE = 128 };
   161   enum { _BLOCKSIZE = 128 };
   161   // global list of blocks of monitors
   162   // global list of blocks of monitors
   162   // gBlockList is really PaddedEnd<ObjectMonitor> *, but we don't
   163   static PaddedEnd<ObjectMonitor> * volatile gBlockList;
   163   // want to expose the PaddedEnd template more than necessary.
       
   164   static ObjectMonitor * volatile gBlockList;
       
   165   // global monitor free list
   164   // global monitor free list
   166   static ObjectMonitor * volatile gFreeList;
   165   static ObjectMonitor * volatile gFreeList;
   167   // global monitor in-use list, for moribund threads,
   166   // global monitor in-use list, for moribund threads,
   168   // monitors they inflated need to be scanned for deflation
   167   // monitors they inflated need to be scanned for deflation
   169   static ObjectMonitor * volatile gOmInUseList;
   168   static ObjectMonitor * volatile gOmInUseList;