I’m trying to profile my code to check how long it takes to execute some parts of my code.
I’ve wrapped my most time-consuming part of the code in something like that:
DateTime start = DateTime.Now;
...
... // Here comes the time-consuming part
...
Console.WriteLine((DateTime.Now - start).Miliseconds);
The program is executing this part of code for couple of seconds (about 20 s) but in console I get the result of something about 800 miliseconds. Why is that so? What am I doing wrong?
Are you actually wanting the TotalMilliseconds property?
Millisecondsreturns the milliseconds component of the timespan, not the actual length of the timespan in milliseconds.That said, you probably want to use Stopwatch (as the others said) since it will be more accurate.