Äh ja, du prüfst ja auch nur einmal, ob die Zeit schon um ist. Wenn das nicht der Fall ist, prüft dein Code nie wieder.

Das ist aber auch sonst kein guter Ansatz. Zum Warten nimmt man normalerweise Thread.sleep