Aktionen
Feature #156
geschlossen
JH
Trainingspunkte werden gebündelt gespeichert statt in jedem Tick
Feature #156:
Trainingspunkte werden gebündelt gespeichert statt in jedem Tick
Beginn:
12.10.2026
Abgabedatum:
12.10.2026
% erledigt:
100%
Geschätzter Aufwand:
Gefunden in Version:
Beschreibung
Anlass¶
Im Training schreibt ErControl jeden Tick (1 Sekunde) per Context.SaveChanges() auf dem UI-Thread. Mit lokaler Datenbank kostet das 11 bis 20 ms pro Tick (ein SQLite-Commit mit Synchronisierung), auf einem Netzlaufwerk 200 bis 430 ms. Das ist nach #155 der größte Posten des Trainings-Ticks und führt zu einem kurzen Stocken der Oberfläche jede Sekunde.
Das Speichern in jedem Tick war als Absturzsicherung gedacht (#30): Bei einem Absturz sollten höchstens ein paar Sekunden verloren gehen.
Umgesetzt¶
- Die Trainingspunkte werden höchstens alle 5 Sekunden gespeichert. Der erste Punkt wird sofort gespeichert, damit die Trainingszeile in der Datenbank existiert.
- Beim Beenden des Trainings werden wie bisher alle Daten gespeichert (Speichern, Verwerfen und Fortsetzen unverändert).
- Bei einem Absturz gehen damit höchstens die letzten 5 Sekunden verloren statt der letzten Sekunde.
Nicht Teil dieses Tickets¶
WAL-Modus der Datenbank und Speichern auf einem Hintergrund-Thread.
JH Von Julius Haman vor 20 Tagen aktualisiert
- Status wurde von Neu zu Erledigt geändert
JH Von Julius Haman vor 19 Tagen aktualisiert
- Abgabedatum wurde auf 12.10.2026 gesetzt
- Beginn wurde auf 12.10.2026 gesetzt
JH Von Julius Haman vor 19 Tagen aktualisiert
- % erledigt wurde von 0 zu 100 geändert
Aktionen