Set a delay without using CPU time

Use SleepEx or Sleep WinAPI function. First parameter is a pause in milliseconds.

SleepEx(3000, False);