Ik ben bezig met een performance test script.
Dit script doet een aantal acties en per actie kijk ik hoe lang dat duurde met
Ik log de tijd in een logfile met:
De ticks sla ik ook nog even op in een dictionary wegens een andere reden (offtopic).
Helemaal aan het einde van mijn script wil ik de ticks in mijn dictionary ook loggen en omzetten naar minuten/seconden:
Nu blijkt dat ondanks dat het aantal ticks gelijk is, ik een verschillende tijdsduur krijg.
Bijv. in mijn logfile staat:
9236362 ticks is 00:00:02.58 (getElapsedTime)
en
9236362 ticks 00:00:00.92 (dumpDictionary)
1 van de beide functies is dus niet goed, maar ik kom er niet uit welke. Via Google vind ik dezelfde voorbeelden.
Ik sla juist ticks op in de dictionary omdat het een long is en ik er makkelijker andere ticks bij kan optellen. Is het misschien beter om gelijk de totale seconden op te slaan?
Dit script doet een aantal acties en per actie kijk ik hoe lang dat duurde met
C#:
1
| System.Diagnostics.Stopwatch |
Ik log de tijd in een logfile met:
C#:
1
2
3
4
5
6
7
| private static string getElapsedTime(System.Diagnostics.Stopwatch stopWatch) { TimeSpan ts = stopWatch.Elapsed; return String.Format("{0:00}:{1:00}:{2:00}.{3:00} ({4})", ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds, stopWatch.ElapsedTicks); } |
De ticks sla ik ook nog even op in een dictionary wegens een andere reden (offtopic).
Helemaal aan het einde van mijn script wil ik de ticks in mijn dictionary ook loggen en omzetten naar minuten/seconden:
C#:
1
2
3
4
5
6
7
8
9
10
| private static void dumpDictionary() { foreach (KeyValuePair<string, long> kvp in elapsedTicksDictionary) { TimeSpan elapsedSpan = new TimeSpan(kvp.Value); of1.WriteLine(string.Format("{0}; {1}; {2:00}:{3:00}:{4:00}.{5}", kvp.Key, kvp.Value, elapsedSpan.Hours, elapsedSpan.Minutes, elapsedSpan.Seconds, elapsedSpan.Milliseconds)); } } |
Nu blijkt dat ondanks dat het aantal ticks gelijk is, ik een verschillende tijdsduur krijg.
Bijv. in mijn logfile staat:
9236362 ticks is 00:00:02.58 (getElapsedTime)
en
9236362 ticks 00:00:00.92 (dumpDictionary)
1 van de beide functies is dus niet goed, maar ik kom er niet uit welke. Via Google vind ik dezelfde voorbeelden.
Ik sla juist ticks op in de dictionary omdat het een long is en ik er makkelijker andere ticks bij kan optellen. Is het misschien beter om gelijk de totale seconden op te slaan?