| Index: src/platform-win32.cc
|
| diff --git a/src/platform-win32.cc b/src/platform-win32.cc
|
| index 292c24a3dace86c6500acbd6634536d0dea7ddb6..c0f049c52d9bacbee9f286c02b0c00f9df609b64 100644
|
| --- a/src/platform-win32.cc
|
| +++ b/src/platform-win32.cc
|
| @@ -1705,46 +1705,6 @@ void Thread::YieldCPU() {
|
|
|
|
|
| // ----------------------------------------------------------------------------
|
| -// Win32 mutex support.
|
| -//
|
| -// On Win32 mutexes are implemented using CRITICAL_SECTION objects. These are
|
| -// faster than Win32 Mutex objects because they are implemented using user mode
|
| -// atomic instructions. Therefore we only do ring transitions if there is lock
|
| -// contention.
|
| -
|
| -class Win32Mutex : public Mutex {
|
| - public:
|
| - Win32Mutex() { InitializeCriticalSection(&cs_); }
|
| -
|
| - virtual ~Win32Mutex() { DeleteCriticalSection(&cs_); }
|
| -
|
| - virtual int Lock() {
|
| - EnterCriticalSection(&cs_);
|
| - return 0;
|
| - }
|
| -
|
| - virtual int Unlock() {
|
| - LeaveCriticalSection(&cs_);
|
| - return 0;
|
| - }
|
| -
|
| -
|
| - virtual bool TryLock() {
|
| - // Returns non-zero if critical section is entered successfully entered.
|
| - return TryEnterCriticalSection(&cs_);
|
| - }
|
| -
|
| - private:
|
| - CRITICAL_SECTION cs_; // Critical section used for mutex
|
| -};
|
| -
|
| -
|
| -Mutex* OS::CreateMutex() {
|
| - return new Win32Mutex();
|
| -}
|
| -
|
| -
|
| -// ----------------------------------------------------------------------------
|
| // Win32 semaphore support.
|
| //
|
| // On Win32 semaphores are implemented using Win32 Semaphore objects. The
|
| @@ -1987,7 +1947,7 @@ void OS::SetUp() {
|
| // call this setup code within the same millisecond.
|
| uint64_t seed = static_cast<uint64_t>(TimeCurrentMillis());
|
| srand(static_cast<unsigned int>(seed));
|
| - limit_mutex = CreateMutex();
|
| + limit_mutex = new Mutex;
|
| }
|
|
|
|
|
|
|