the test would hang on wine before the implementation is in place.
Thanks! I missed that the current test cannot verify the Windows behaviour before the commit that introduces the Wine implementation.
the CloseHandle before the WaitForSingleObject is a workaround to get the thread to exit
I'm afraid that closing a handle in use is racy by nature; it's effectively pulling the rug out from underneath. A better approach would be to use `CancelIoEx` on the `OVERLAPPED` structure, or `NtCancelIoFileEx` on the `IO_STATUS_BLOCK` structure to cancel the pending operation.
moving the CloseHandle was meant to show that workaround is no longer needed and that it now performs like windows
i can remove that if preferred