13 #if defined(XSENS_DEBUG) && defined(_MSC_VER)
14 #pragma warning(disable : 4985)
20 #pragma warning(disable : 4127)
35 #define _WIN32_WINNT \
40 #ifndef _WIN32_WINDOWS
42 #define _WIN32_WINDOWS \
73 #define XSENS_THREAD_RETURN DWORD
74 #define XSENS_THREAD_TYPE WINAPI
75 #define XSENS_THREAD_PARAM LPVOID
77 #define XSENS_INVALID_THREAD INVALID_HANDLE_VALUE
88 #define xsYield() Sleep(0)
99 #define xsStartThread(func, param, pid) \
100 CreateThread(nullptr, 0, (LPTHREAD_START_ROUTINE)func, param, 0, pid)
104 #define xsGetCurrentThreadId() GetCurrentThreadId()
105 #define xsGetCurrentThreadHandle() GetCurrentThread()
106 #define xsSuspendThread(thrd) SuspendThread(thrd)
107 #define xsResumeThread(thrd) ResumeThread(thrd)
108 #define xsSetThreadPriority(thrd, prio) SetThreadPriority(thrd, prio)
109 #define xsGetThreadPriority(thrd) GetThreadPriority(thrd)
113 #include <semaphore.h>
135 #define XSENS_THREAD_RETURN void*
136 #define XSENS_THREAD_TYPE
137 #define XSENS_THREAD_PARAM void*
139 #define XSENS_INVALID_THREAD 0
143 #define xsYield() pthread_yield_np()
145 #define xsYield() pthread_yield()
155 #define xsGetCurrentThreadId() pthread_self()
156 #define xsSuspendThread(thrd)
157 #define xsResumeThread(thrd)
158 #define xsSetThreadPriority(thrd, prio)
XsThreadPriority
Thread priorities for xsSetThreadPriority() and xsGetThreadPriority()
@ XS_THREAD_PRIORITY_NORMAL
@ XS_THREAD_PRIORITY_HIGH
@ XS_THREAD_PRIORITY_LOWER
@ XS_THREAD_PRIORITY_HIGHER
@ XS_THREAD_PRIORITY_LOWEST
@ XS_THREAD_PRIORITY_HIGHEST
#define xsStartThread(func, param, pid)
Start a function as a thread.
XSTYPES_DLL_API void xsNameThisThread(const char *threadName)
HANDLE XsThread
A handle for a thread.