How do you tell the OS in windows to process another thread or process, which is useful when your app is processor-extensive? Sort of like the DoEvents in Visual Basic. I'm sure there is a Win32 API for that. Tried searching, but couldn't find anything.
There's an API called SwitchToThread()
You could also call Sleep(0), which should yield to any thread that has the same or higher priority.
Or, if you need to perform longer cpu-power expensive tasks (but nothing time-critical), you could also just lower your own process or task priority. That way, you can get as much CPU time as you want, without disturbing any other process/thread. All applications will stay responsive and act as if nothing was special, but you can use all the "idle" time without you having to periodically call Sleep().