diff options
| author | Michael Bebenita <[email protected]> | 2010-08-16 18:44:26 -0700 |
|---|---|---|
| committer | Michael Bebenita <[email protected]> | 2010-08-16 18:44:26 -0700 |
| commit | 5d98a311e41316635327479278e3d41be54771d1 (patch) | |
| tree | 8a6ff71650223b2b6c452074308d4d6b4d2bea81 /src/rt/sync | |
| parent | Un-xfailed working tests. (diff) | |
| download | rust-5d98a311e41316635327479278e3d41be54771d1.tar.xz rust-5d98a311e41316635327479278e3d41be54771d1.zip | |
Putting out the burning tree on Windows. Turns out you can completely starve threads by not yielding on windows/vmware, really weird.
Diffstat (limited to 'src/rt/sync')
| -rw-r--r-- | src/rt/sync/sync.cpp | 2 | ||||
| -rw-r--r-- | src/rt/sync/timer.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/rt/sync/sync.cpp b/src/rt/sync/sync.cpp index eba51a49..09a6f291 100644 --- a/src/rt/sync/sync.cpp +++ b/src/rt/sync/sync.cpp @@ -5,7 +5,7 @@ void sync::yield() { #ifdef __APPLE__ pthread_yield_np(); #elif __WIN32__ - + Sleep(1); #else pthread_yield(); #endif diff --git a/src/rt/sync/timer.cpp b/src/rt/sync/timer.cpp index e45dd633..0487b397 100644 --- a/src/rt/sync/timer.cpp +++ b/src/rt/sync/timer.cpp @@ -6,12 +6,12 @@ #endif timer::timer() { - reset(0); #if __WIN32__ uint64_t ticks_per_second; QueryPerformanceFrequency((LARGE_INTEGER *)&ticks_per_second); _ticks_per_us = ticks_per_second / 1000000; #endif + reset(0); } void |