Revert "Further attempts at fixing segfault in locks"
This reverts commit dd93ba7ec4
.
This commit is contained in:
parent
dd93ba7ec4
commit
9c84058e1b
|
@ -198,7 +198,7 @@ public:
|
||||||
bool TryEnter();
|
bool TryEnter();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
std::mutex* _mutex;
|
std::unique_ptr<std::mutex> _mutex;
|
||||||
};
|
};
|
||||||
|
|
||||||
class asCThreadReadWriteLock
|
class asCThreadReadWriteLock
|
||||||
|
@ -215,7 +215,7 @@ public:
|
||||||
void ReleaseShared();
|
void ReleaseShared();
|
||||||
bool TryAcquireShared();
|
bool TryAcquireShared();
|
||||||
protected:
|
protected:
|
||||||
std::shared_mutex* _mutex;
|
std::unique_ptr<std::shared_mutex> _mutex;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -350,7 +350,7 @@ asCThreadCriticalSection::asCThreadCriticalSection()
|
||||||
InitializeCriticalSection(&cs);
|
InitializeCriticalSection(&cs);
|
||||||
#endif
|
#endif
|
||||||
#elif defined AS_STD_THREADS
|
#elif defined AS_STD_THREADS
|
||||||
_mutex = new std::mutex();
|
_mutex = std::make_unique<std::mutex>();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -360,8 +360,6 @@ asCThreadCriticalSection::~asCThreadCriticalSection()
|
||||||
pthread_mutex_destroy(&cs);
|
pthread_mutex_destroy(&cs);
|
||||||
#elif defined AS_WINDOWS_THREADS
|
#elif defined AS_WINDOWS_THREADS
|
||||||
DeleteCriticalSection(&cs);
|
DeleteCriticalSection(&cs);
|
||||||
#elif defined AS_STD_THREADS
|
|
||||||
delete _mutex;
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -419,7 +417,7 @@ asCThreadReadWriteLock::asCThreadReadWriteLock()
|
||||||
InitializeCriticalSection(&writeLock);
|
InitializeCriticalSection(&writeLock);
|
||||||
#endif
|
#endif
|
||||||
#elif defined AS_STD_THREADS
|
#elif defined AS_STD_THREADS
|
||||||
_mutex = new std::shared_mutex();
|
_mutex = std::make_unique<std::shared_mutex>();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -430,8 +428,6 @@ asCThreadReadWriteLock::~asCThreadReadWriteLock()
|
||||||
#elif defined AS_WINDOWS_THREADS
|
#elif defined AS_WINDOWS_THREADS
|
||||||
DeleteCriticalSection(&writeLock);
|
DeleteCriticalSection(&writeLock);
|
||||||
CloseHandle(readLocks);
|
CloseHandle(readLocks);
|
||||||
#elif defined AS_STD_THREADS
|
|
||||||
delete _mutex;
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue