Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Diagnostics;
- namespace Articulo.Cap06
- {
- public class RendimientoTimeSpan
- {
- public static void Main()
- {
- // Límite de pruebas:
- const int LIM_PRUEBAS = 100000000;
- // Creación e inicio de cronómetro:
- Stopwatch cronometro1 = Stopwatch.StartNew();
- // Creación de objetos TimeSpan a partir de TimeSpan.FromHours:
- for (int numPrueba = 1; numPrueba <= LIM_PRUEBAS; ++numPrueba)
- {
- TimeSpan intervalo = TimeSpan.FromHours(1);
- }
- // Detiene el cronómetro:
- cronometro1.Stop();
- // Crea un nuevo contador:
- Stopwatch cronometro2 = Stopwatch.StartNew();
- // Creación de objetos con el constructor TimeSpan(Int32, Int32, Int32):
- for(int numPrueba = 1; numPrueba <= LIM_PRUEBAS; ++numPrueba)
- {
- TimeSpan intervalo = new TimeSpan(1, 0, 0);
- }
- // Detiene el cronómetro:
- cronometro2.Stop();
- // Un nuevo cronómetro para la instanciación con caché:
- Stopwatch cronometro3 = Stopwatch.StartNew();
- // Creación de caché para objetos TimeSpan:
- TimeSpan cache = new TimeSpan(1, 0, 0);
- // Creación de objetos TimeSpan a partir de un caché:
- for (int numPrueba = 1; numPrueba <= LIM_PRUEBAS; ++numPrueba)
- {
- TimeSpan intervalo = cache;
- }
- // Detiene el último cronómetro:
- cronometro3.Stop();
- // Visualización de resultados:
- Console.WriteLine ("\nTimeSpan.FromHours(1): {0,8}ms", cronometro1.ElapsedMilliseconds);
- Console.WriteLine ("new TimeSpan(1, 0, 0): {0,8}ms", cronometro2.ElapsedMilliseconds);
- Console.WriteLine ("Caché: {0,24}ms\n", cronometro3.ElapsedMilliseconds);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement