Tek: Warteschleife spinnt - oder Perl kann nicht zählen...

Beitrag lesen

Hallo.

Mal unabhängig vom Programmierstil (ist eh noch Beta), schaut och doch mal bitte das folgende Script an:

Haupt :

$timeout = localtime();
    if ($timeout =~ /06:55/ $timeout =~ /06:56/ $timeout =~ /07:/) {
       &time_out;
   }

viele andere Zeilen !!! ;-)

sub time_out {

$timeout = localtime();

while ($end ne "1") {        
           if ($timeout  =~ /21:/) { $end = 1; }
           else { $timeout = localtime();  $end = 0;     }
       }
       goto Haupt;
}

Nun, das Script sollte sich jedenfalls zu einer bestimmten Uhrzeit (ca 06:55 - 07:00) selbst deaktivieren, bzw in die Timeoutschleife katapultieren.

In der Timoutschleife wird die Uhrzeit 21:00 erwartet, um dann anschließend das Programm wieder erneut zu starten (goto Haupt).

So weit so gut, Das Script startet......läuft durch.......macht und tut....setzt um 07:00 Uhr in die Time_out Schleife aus......und startet 1,5 - 2 Stunden später wieder von neuem ...??Häh?

In 2 Stunden?

Wer kann helfen?

Danke.