1 #ifndef __QEMU_THREAD_WIN32_H 2 #define __QEMU_THREAD_WIN32_H 1 3 #include "windows.h" 4 5 struct QemuMutex { 6 CRITICAL_SECTION lock; 7 LONG owner; 8 }; 9 10 struct QemuCond { 11 LONG waiters, target; 12 HANDLE sema; 13 HANDLE continue_event; 14 }; 15 16 struct QemuSemaphore { 17 HANDLE sema; 18 }; 19 20 typedef struct QemuThreadData QemuThreadData; 21 struct QemuThread { 22 QemuThreadData *data; 23 unsigned tid; 24 }; 25 26 /* Only valid for joinable threads. */ 27 HANDLE qemu_thread_get_handle(QemuThread *thread); 28 29 #endif 30