The Sleep(0) in this loop is incorrect, and should be removed. This
authorJeremy White <jwhite@codeweavers.com>
Tue, 2 Nov 2004 19:26:22 +0000 (19:26 +0000)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 2 Nov 2004 19:26:22 +0000 (19:26 +0000)
fixes iTunes and a game reported by che.

dlls/winmm/time.c

index 7ecc1b833751621e217404bb2cf924d0a65bc4cf..16d9c909be978daf06afefc6cf31d5dfd0e62089 100644 (file)
@@ -242,18 +242,7 @@ static DWORD CALLBACK TIME_MMSysTimeThread(LPVOID arg)
        sleep_time = TIME_MMSysTimeCallback(iData);
 
         if (sleep_time == 0)
-        {
-            /* This Sleep is controversial; it was added to make
-               Wine able to replicate a high speed (e.g. 1 ms)
-               timer event where the called event routine chews
-               a lot of CPU.  This is required because of the
-               bias some Linux kernel versions have against threads that
-               chew a lot of the CPU; this Sleep(0) yields enough
-               in that spin case doesn't trigger the bias.
-               Further, it should do no harm, but an fyi.  */
-            Sleep(0);
             continue;
-        }
 
         rc = WaitForSingleObject(TIME_hWakeEvent, sleep_time);
         if (rc != WAIT_TIMEOUT && rc != WAIT_OBJECT_0)