Timer-Rückruf wird alle 24 Stunden ausgelöst - wird die Sommerzeit richtig gehandhabt?

Ich habe nur darüber nachgedacht, wie ich einen Dienst gelöst habe, der alle 24 Stunden eine Aufgabe ausführt, und wie die Sommerzeit dies möglicherweise beeinträchtigen könnte.

Um die Aufgabe täglich auszuführen, habe ich einen System.Threading.Timer mit einem Zeitraum von 24 Stunden verwendet:

_timer = new System.Threading.Timer(TimerCallback, null,
    requiredTime - DateTime.Now, new TimeSpan(24, 0, 0));

Als ich plötzlich über die Sommerzeitkorrektur nachdachte, hatte ich drei Gedanken:

DST ist nutzlos und wir sollten es loswerden.Behandelt der Timer das richtig? Ich denke nicht - es wartet einfach 24 Stunden - egal ob sich die Uhr geändert hat. Es wartet nur auf den angegebenen Zeitraum und ruft dann den TimerCallback erneut auf.DST ist nutzlos und wir sollten es wirklich loswerden.

Ist mein zweiter Gedanke richtig? Wenn ja, was kann ich tun, um dieses Problem zu vermeiden? Die Task darf nicht eine Stunde später oder früher ausgeführt werden, wenn eine Sommerzeitkorrektur durchgeführt wurde.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage