Question to developers

 
Why are infinite loops (or, better said, loops with an unknown number of steps) , like  while (true) { ... stuff ... ; if (cond=true) break; } maxing out processor usage?
 

Usually such loops are like continuous processing within one thread without switching to other threads - they do not contain functions like Sleep.

Try to use Sleep(0) in your indefinite loop and feel the difference.

Reason: