So unterbrechen Sie die Echtzeit in Perl

Ich bin ziemlich neu in Perl und dies ist mein erster Beitrag hier, also sei sanft.

Ich verwende Echtzeit in einem Countdown-Timer von 60 Sekunden und muss in der Lage sein, ihn alle 10 Sekunden zu stoppen, und der Benutzer muss dann in jedem Intervall von 10 eingeben, ob er den Countdown fortsetzen möchte oder nicht. Der Timer funktioniert, I Ich kann nur nicht herausfinden, wie ich es anhalten soll, damit der Benutzer seine Antwort eingibt. Eine möglichst grundsätzliche Antwort wäre sehr zu begrüßen, da ich noch nicht viel verstehe. Vielen Dank und hier ist mein Code soweit.

my $countdown = 1*60; #60 seconds
$| = 1; #disable output buffering

my $start_time = time;
my $end_time = $start_time + $countdown;


for (;;) {
    my $time = time;
    last if ($time >= $end_time);
    printf("\r%02d:%02d:%02d",
        ($end_time - $time) / (1*60),
        ($end_time - $time) / 60%60,
        ($end_time - $time) % 60,
    );

    sleep(1);
}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage