blob: b9d1be8478045d07e25f2b3d08bb140a17eb1ed7 [file] [log] [blame]
Paolo Bonzini9257d462011-03-12 17:43:52 +01001#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
Paolo Bonzini403e6332011-12-12 17:21:33 +010016typedef struct QemuThreadData QemuThreadData;
Paolo Bonzini9257d462011-03-12 17:43:52 +010017struct QemuThread {
Paolo Bonzini403e6332011-12-12 17:21:33 +010018 QemuThreadData *data;
19 unsigned tid;
Paolo Bonzini9257d462011-03-12 17:43:52 +010020};
21
Paolo Bonzini1ecf47b2011-12-13 13:43:52 +010022/* Only valid for joinable threads. */
23HANDLE qemu_thread_get_handle(QemuThread *thread);
24
Paolo Bonzini9257d462011-03-12 17:43:52 +010025#endif