Code: Alles auswählen
begin
InitProg(); // <- hier Start in Logfile schreiben
repeat
MachWas();
sleep(10); // alle 10msec
if KeyPressed then // Taste prüfen
if ReadKey = ^C then // wenn Ctrl-C
Break;
until false;
CloseProg(); // <- hier Ende in Logfile schreiben
end.
Starte ich das Programm in der Konsole, kann ich es mit Ctrl-C beenden, und es schreibt brav Start und Ende ins Logfile.
Starte ich das Programm allerdings mit cron beim Start des Raspberry, habe ich ja keinen Zugriff per Ctrl-C. Ich kann das Programm entweder killen oder es wird gekillt, wenn ich den Raspi runterfahre. Beide Male wird das Ende aber natürlich nicht im Logfile vermerkt.
Gibt es eine Möglichkeit, das Programm im Hintergrund laufen zu lassen, es aber dennoch per Konsole ordentlich zu beenden bzw. bei Shutdown eine Beenden-Nachricht zu erhalten? Wie wird das bei Services gemacht, da gibt es auch start service und stop service?
Idealerweise soll das Programm
- über die Konsole beendet werden können
- beim Herunterfahren sauber beendet werden
- durch einen Cron Job täglich beendet und neu gestartet werden
Realisierbar? Mit vertretbarem Aufwand realisierbar?