Es gibt einen Timer, der alle 24 Stunden eine Funktion aufruft. Diese Funktion liest eine Datei, um die Anzahl der verbleibenden Tage zu ermitteln, dekrementiert sie um 1 und schreibt die neuen verbleibenden Tage in dieselbe Datei zurück.Logik zur Behandlung der verbleibenden Tage beim Neustart
Problem: Wenn das System neu gestartet wird, wird der Zeitgeber (der auf die 24-Stunden-Markierung wartet) möglicherweise nicht aufgerufen, und das Schreiben in die Datei wird nicht ausgeführt. Wenn der Neustart beispielsweise jeden Tag vor dem 24-Stunden-Zeitraum stattfindet, werden die verbleibenden Tage niemals verringert.
Ich verwende C++ - Programm auf einem Linux-System.
Welche Logik ist erforderlich, um dieses Problem zu lösen.
Warum müssen Sie die verbleibenden Tage (bis?) Überhaupt zählen? Kannst du nicht einfach das Datum X speichern? –
@AndreyTurkin Dies dient zum Verfolgen der Anzahl von Tagen, bis ein anderes Ereignis eintreten sollte. Das Ereignis sollte nicht passieren, bis "X" Tage verstrichen sind. Diese 'X' Tage werden in einer Datei initialisiert. –
Ich stimme @AndreyTurkin zu, Speichern des Enddatums und Berechnung der verbleibenden Tage basierend auf dem wäre ein robusteres System und würde dieses Problem vermeiden – vu1p3n0x