Du kan använda Trace. Läs mer i dokumentationen.
Hej!
Jag vill mäta hur lång tid det tar att exekvera några rader kod.
Jag fattar inte bara hur jag skall göra. Har använt timer i VBA, men det verkar inte funka på samma sätt i .NET...
7 svar · 382 visningar · startad av clarkbones
Hej!
Jag vill mäta hur lång tid det tar att exekvera några rader kod.
Jag fattar inte bara hur jag skall göra. Har använt timer i VBA, men det verkar inte funka på samma sätt i .NET...
Du kan använda Trace. Läs mer i dokumentationen.
float FrameRate(void){
if( GetTickCount()-last >= 1000 ) {
last = GetTickCount();
framespersecond=frames;
frames=0;
}
frames++;
return framespersecond;
}
Gettickcount är datorns interna klocka som räknar oavsett vad som händer, finns nog inte i C# tror jag. kolla i .NET SDK om "Performance Counter" och prova om det går att använda den, den bör göra likadant . och "1000" är när det gått 1 sekund. Detta kanske ger dig en hint.
using System.Diagnostics
private void Page_Load(object sender, System.EventArgs e)
{
Trace.Write("Här börjar programmet");
// HÄR HAR DU DIN KOD!!
Trace.Write("Här slutar programmet");
}
DateTime StartTime = DateTime.Now;
/*
Kodblock.
*/
TimeSpan timeSpent = DateTime.Now.Subtract(StartTime);
TimeSpan har sen properties som MilliSeconds, Ticks osv ..
Nikos kod känns enklast. Tack!