1
0
зеркало из https://github.com/luanti-org/luanti.git synced 2025-11-09 03:25:28 +01:00

Fix win32 jthread implementation

Этот коммит содержится в:
sapier
2013-12-06 17:49:10 +01:00
родитель 22dbbf0a6f
Коммит 35f88ac67c
2 изменённых файлов: 12 добавлений и 5 удалений

2
src/jthread/win32/jsemaphore.cpp Обычный файл → Исполняемый файл
Просмотреть файл

@@ -27,7 +27,7 @@ JSemaphore::JSemaphore() {
}
JSemaphore::~JSemaphore() {
CloseHandle(&m_hSemaphore);
CloseHandle(m_hSemaphore);
}
JSemaphore::JSemaphore(int initval) {

15
src/jthread/win32/jthread.cpp Обычный файл → Исполняемый файл
Просмотреть файл

@@ -46,14 +46,21 @@ JThread::~JThread()
void JThread::Stop() {
runningmutex.Lock();
requeststop = false;
requeststop = true;
runningmutex.Unlock();
}
void JThread::Wait() {
int WaitForSingleObject_retval = WaitForSingleObject(threadhandle, INFINITE);
assert(WaitForSingleObject_retval == 0);
UNUSED(WaitForSingleObject_retval);
runningmutex.Lock();
if (running)
{
runningmutex.Unlock();
WaitForSingleObject(threadhandle, INFINITE);
}
else
{
runningmutex.Unlock();
}
}
int JThread::Start()