Can I use a system call?
Some of the Win32 things mention "millisecond precision only", but this isn't quite correct.Waitable Timers on Win32 let you request time values in units of 200 nanoseconds.  See `CreateWaitableTimer`, and `SetWaitableTimer`.`Sleep` and `SleepEx` can be implemented using a waitable timer, just use `WaitForSingleObjectEx`.If you need to wait for an object (semaphore, etc) using a time unit other than milliseconds, you can use `WaitForMultipleObjectsEx` with one of them being a waitable timer.---The next question is if Win32 can actually deliver those requests for precise times or not.  From the testing I did a while ago where I was simulating Sleep, I got actual sleep times rounded to about 4ms.  So much for requesting nanosecond level precision.