Seite 1 von 1

Probleme mit QDateTime (Geschwindigkeit)

Verfasst: 12. Januar 2018 21:22
von ngc
Hallo zusammen,

in einem Programm muss ich sehr oft zu einem vorhandenen Zeit (Datum + Zeit) etwas Zeit hinzufügen, also etwa so:

Code: Alles auswählen

for( i = 0; i < _echt sehr_gross; i++)
{
    d = d.addSeconds( delta );
    // tu was mit d
}
Leider hat sich genau dieses

Code: Alles auswählen

addSeconds() 
als zeitlicher Flaschenhals herausgestellt. probiert habe ich es schon mit

Code: Alles auswählen

    d = d.addDays( delta / sekunden_pro_tag ).addSeconds( delta % sekunden_pro_tag );
sowie

Code: Alles auswählen

    value = d.currentSecsSinceEpoch() + delta;
    d.setSecsSinceEpoch( value );
Hat noch jemand eine Idee?

Re: Probleme mit QDateTime (Geschwindigkeit)

Verfasst: 13. Januar 2018 13:16
von Christian81
Rechne doch einfach nur in Sekunden und benutze QDateTime nur zur Anzeige.

Re: Probleme mit QDateTime (Geschwindigkeit)

Verfasst: 13. Januar 2018 15:16
von ngc
Danke für deinen Ratschlag.
Christian81 hat geschrieben: 13. Januar 2018 13:16 Rechne doch einfach nur in Sekunden und benutze QDateTime nur zur Anzeige.
Mein Programm bekommt QDateTime-Werte geliefert (Startzeiten, aus einem anderen Programmteil) und muss diese nun vervollständigen (Endzeiten). Die Startzeiten selber werden mit komplizierten Regeln aus Textbeschreibungen, die auch Zeitzonen beinhalten, gelesen und berechnet. In dieser Berechnung fließen auch Sachen wie Wochentage mit ein - eine Information, die völlig verloren geht, wenn ich bei Sekunden bleibe. :(

Re: Probleme mit QDateTime (Geschwindigkeit)

Verfasst: 13. Januar 2018 17:26
von Christian81
Nur weil das initiale Erzeugen ein QDateTime - Objekt erfordert, muss die Weiterverarbeitung dies ja nicht tun - zumal die weitere Verarbeitung wie Du mitbekommen hast, ziemlich lang dauert.