Was hast du denn in den Haupt "do...Loop" schleife noch alles zu tun ?
Vielleicht könnt man die beiden Funktionen zusammenführen und gewissermassen gleichzeitig tun.