src/hotspot/os/windows/os_windows.hpp
changeset 53849 46ef4dea49e5
parent 53646 043ae846819f
child 57738 807d192fb7dd
equal deleted inserted replaced
53848:8c6a3535b9cb 53849:46ef4dea49e5
   146   static Thread* _protected_thread;
   146   static Thread* _protected_thread;
   147   static ThreadCrashProtection* _crash_protection;
   147   static ThreadCrashProtection* _crash_protection;
   148   static volatile intptr_t _crash_mux;
   148   static volatile intptr_t _crash_mux;
   149 };
   149 };
   150 
   150 
   151 class PlatformEvent : public CHeapObj<mtInternal> {
   151 class PlatformEvent : public CHeapObj<mtSynchronizer> {
   152   private:
   152   private:
   153     double CachePad [4] ;   // increase odds that _Event is sole occupant of cache line
   153     double CachePad [4] ;   // increase odds that _Event is sole occupant of cache line
   154     volatile int _Event ;
   154     volatile int _Event ;
   155     HANDLE _ParkHandle ;
   155     HANDLE _ParkHandle ;
   156 
   156 
   172     int  park (jlong millis) ;
   172     int  park (jlong millis) ;
   173 } ;
   173 } ;
   174 
   174 
   175 
   175 
   176 
   176 
   177 class PlatformParker : public CHeapObj<mtInternal> {
   177 class PlatformParker : public CHeapObj<mtSynchronizer> {
   178   protected:
   178   protected:
   179     HANDLE _ParkEvent ;
   179     HANDLE _ParkEvent ;
   180 
   180 
   181   public:
   181   public:
   182     ~PlatformParker () { guarantee (0, "invariant") ; }
   182     ~PlatformParker () { guarantee (0, "invariant") ; }
   186     }
   186     }
   187 
   187 
   188 } ;
   188 } ;
   189 
   189 
   190 // Platform specific implementation that underpins VM Monitor/Mutex class
   190 // Platform specific implementation that underpins VM Monitor/Mutex class
   191 class PlatformMonitor : public CHeapObj<mtInternal> {
   191 class PlatformMonitor : public CHeapObj<mtSynchronizer> {
   192  private:
   192  private:
   193   CRITICAL_SECTION   _mutex; // Native mutex for locking
   193   CRITICAL_SECTION   _mutex; // Native mutex for locking
   194   CONDITION_VARIABLE _cond;  // Native condition variable for blocking
   194   CONDITION_VARIABLE _cond;  // Native condition variable for blocking
   195 
   195 
   196  public:
   196  public: