From 024db01873b36141e48d7f1b65229d4383850620 Mon Sep 17 00:00:00 2001 From: liu0hy Date: Thu, 29 May 2025 17:05:03 +0800 Subject: [PATCH] Fix inaccurate usleep duration in QThread on Windows Replace (usec/1000)+1 with (usec+999)/1000 to ensure correct millisecond conversion for small values. Previously, passing 1000 would incorrectly sleep for 2ms instead of 1ms. --- src/corelib/thread/qthread_win.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/thread/qthread_win.cpp b/src/corelib/thread/qthread_win.cpp index ec752b7dce02..c6177ad0ca85 100644 --- a/src/corelib/thread/qthread_win.cpp +++ b/src/corelib/thread/qthread_win.cpp @@ -311,7 +311,7 @@ void QThread::msleep(unsigned long msecs) void QThread::usleep(unsigned long usecs) { - ::Sleep((usecs / 1000) + 1); + ::Sleep((usecs + 999) / 1000); } #if QT_CONFIG(thread)