Faut bien voir la différence entre un Delay, et ton while (meme si a la sortie, tu vois la meme chose)
Ton while va dire a Windows, autant qu´il peut, autrement dit plusieurs milliers de fois par secondes ?
Le temps est écoulé ? --> non
Le temps est écoulé ? --> non
Le temps est écoulé ? --> non
....
et le processeur va fonctionner a 100% car il va passer son temps a répondre non a la question...
Avec un Delay, le processus se met en "Sleep" : il s´endorre
En gros, avec un Delay, tu dis a Windows (ou autre systeme)
"je m´endorre, réveille moi dans x millisecondes, en attendant, fait ce que tu veux"
et du coup, le processeur ne tourne pas a 100% 