WinAPI: Implement Sleep

Used by std::this_thread::sleep.
This commit is contained in:
Billy Laws committed 2025-12-15 15:30:00 +00:00
1 parent ec6767060a
commit 7c8fdc1651
2 files changed
+5 -1

No files matched your search

+4 -1
View File
@@ -133,5 +133,8 @@ DLLEXPORT_FUNC(WINBOOL, SwitchToThread, ()) {
}
DLLEXPORT_FUNC(void, Sleep, (DWORD dwMilliseconds)) {
UNIMPLEMENTED();
LARGE_INTEGER Time;
// A negative value indicates a relative time measured in 100ns intervals.
Time.QuadPart = static_cast<ULONGLONG>(dwMilliseconds) * -10000;
NtDelayExecution(false, &Time);
}
+1
View File
@@ -497,6 +497,7 @@ NTSTATUS WINAPI NtAllocateVirtualMemoryEx(HANDLE, PVOID*, SIZE_T*, ULONG, ULONG,
NTSTATUS WINAPI NtAllocateVirtualMemory(HANDLE, PVOID*, ULONG_PTR, SIZE_T*, ULONG, ULONG);
NTSTATUS WINAPI NtContinue(PCONTEXT, BOOLEAN);
NTSTATUS WINAPI NtCreateSection(HANDLE*, ACCESS_MASK, const OBJECT_ATTRIBUTES*, const LARGE_INTEGER*, ULONG, ULONG, HANDLE);
NTSTATUS WINAPI NtDelayExecution(BOOLEAN, const LARGE_INTEGER*);
NTSTATUS WINAPI NtDuplicateObject(HANDLE, HANDLE, HANDLE, PHANDLE, ACCESS_MASK, ULONG, ULONG);
NTSTATUS WINAPI NtFlushInstructionCache(HANDLE, LPCVOID, SIZE_T);
NTSTATUS WINAPI NtFreeVirtualMemory(HANDLE, PVOID*, SIZE_T*, ULONG);