windows: Include for Vista instead of defining CondVar/SRWLock functions ourself

This commit is contained in:
Martin Willi
2014-06-04 15:53:05 +02:00
parent 8120b3c339
commit 89e46c41f1
5 changed files with 12 additions and 33 deletions
+4 -21
View File
@@ -16,6 +16,10 @@
#ifndef WINDOWS_THREAD_H_
#define WINDOWS_THREAD_H_
/* for conditionVariables, Vista */
#define _WIN32_WINNT 0x0600
#include <library.h>
/**
* @defgroup windowsthread windows
* @ingroup threading
@@ -24,27 +28,6 @@
* @{ @ingroup windowsthread
*/
/**
* MinGW seems to miss the actual struct definition
*/
typedef struct {
PVOID Ptr;
} SRWLOCK, *PSRWLOCK, CONDITION_VARIABLE, *PCONDITION_VARIABLE;
VOID WINAPI InitializeConditionVariable(PCONDITION_VARIABLE ConditionVariable);
BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE ConditionVariable,
PCRITICAL_SECTION CriticalSection, DWORD dwMilliseconds);
BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE ConditionVariable,
PSRWLOCK SRWLock, DWORD dwMilliseconds, ULONG Flags);
VOID WINAPI WakeAllConditionVariable(PCONDITION_VARIABLE ConditionVariable);
VOID WINAPI WakeConditionVariable(PCONDITION_VARIABLE ConditionVariable);
VOID WINAPI AcquireSRWLockExclusive(PSRWLOCK SRWLock);
VOID WINAPI AcquireSRWLockShared(PSRWLOCK SRWLock);
BOOL TryAcquireSRWLockExclusive(PSRWLOCK SRWLock);
VOID WINAPI InitializeSRWLock(PSRWLOCK SRWLock);
VOID WINAPI ReleaseSRWLockExclusive(PSRWLOCK SRWLock);
VOID WINAPI ReleaseSRWLockShared(PSRWLOCK SRWLock);
/**
* Set active condvar of a thread before waiting in it.
*