Estoy intentando evaluar el rendimiento de algún código. Estoy usando un cronómetro. Cuando imprimo el número de milisegundos, siempre me dice 0, así que pensé que probaría la cantidad de tics. Estoy viendo que el número de tics es de 20 000 a 30 000. Al mirar el MSDN en TimeSpan.TicksPerMillisecond dice que son 10 000 tics por milisegundo. En ese caso, ¿por qué los milisegundos transcurridos en mi cronómetro no aparecen como 2 o 3?¿Por qué ElapsedTicks X 10 000 no es igual a ElapsedMilliseconds para .Net's Stopwatch?
¿Qué me estoy perdiendo? Incluso he superado el resultado en la misma línea. Esto es lo que obtengo
Time taken: 26856 ticks, 0 ms
Y es constante.
EDITAR (Agregué un código) Este es mi código que tengo corriendo en un bucle. Me doy cuenta de que estoy creando un nuevo cronómetro cada vez que no es muy eficiente, pero no veo cómo podría sesgar mis resultados. Gracias chicos
Dim SW = New Stopwatch()
SW.Reset()
SW.Start()
MethodCall()
SW.Stop()
Console.WriteLine(String.Format("Time to increase counters: {0} ticks, {1} ms", SW.ElapsedTicks, SW.ElapsedMilliseconds))
¿Tal vez podría publicar un ejemplo de trabajo completo? –
Publique su código real, en lugar de solo una descripción del mismo y el resultado. –
Agregó un código. – uriDium