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