Ich kann deinen Code so auf die Schnelle nicht nachvollziehen aber mich stören in zeitkritischen Anwendungen Warteschleifen unheimlich. Ich habe mir mit diesen Schleifen schon die unmöglichsten Fehler eingehandelt die nur sehr schwer nachzuvollziehen sind. Vieleicht überdenkst du mal das.