< prev index next >

src/hotspot/os/solaris/os_solaris.hpp

Print this page

        

*** 333,370 **** status = os::Solaris::mutex_init(_mutex); assert_status(status == 0, status, "mutex_init"); } }; ! // Platform specific implementations that underpin VM Mutex/Monitor classes ! ! class PlatformMutex : public CHeapObj<mtSynchronizer> { ! // Disable copying ! PlatformMutex(const PlatformMutex&); ! PlatformMutex& operator=(const PlatformMutex&); ! ! protected: ! mutex_t _mutex; // Native mutex for locking ! ! public: ! PlatformMutex(); ! ~PlatformMutex(); ! void lock(); ! void unlock(); ! bool try_lock(); ! }; ! ! class PlatformMonitor : public PlatformMutex { private: cond_t _cond; // Native condition variable for blocking - // Disable copying - PlatformMonitor(const PlatformMonitor&); - PlatformMonitor& operator=(const PlatformMonitor&); public: PlatformMonitor(); ~PlatformMonitor(); int wait(jlong millis); void notify(); void notify_all(); }; --- 333,354 ---- status = os::Solaris::mutex_init(_mutex); assert_status(status == 0, status, "mutex_init"); } }; ! // Platform specific implementation that underpins VM Monitor/Mutex class ! class PlatformMonitor : public CHeapObj<mtSynchronizer> { private: + mutex_t _mutex; // Native mutex for locking cond_t _cond; // Native condition variable for blocking public: PlatformMonitor(); ~PlatformMonitor(); + void lock(); + void unlock(); + bool try_lock(); int wait(jlong millis); void notify(); void notify_all(); };
< prev index next >