Objet Timer en C# [Résolu]

Messages postés
30
Date d'inscription
lundi 17 octobre 2005
Dernière intervention
4 janvier 2008
- 8 nov. 2006 à 13:10 - Dernière réponse :
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Dernière intervention
3 novembre 2008
- 8 nov. 2006 à 17:23
Bonjour,
Je souhaite récupérer le temps que va mettre l'instruction suivant grâce à l'objet Timer en mode console. Et le problème c'est que cela retourne toujours la valeur 100 même en changeant le nombre de boucle, avec myTimer.Interval.
Je ne vois pas comment faire :
       - Peut être que j'utilise mal le Timer
       - Peut être "myTimer.Interval"
je ne sais pas donc si je pourrai avoir de l'aide pour m'expliquer ou me montrer comment je pourrai faire svp.

Voici le programme commenter.

using System;
namespace ConsoleApplication1
{
    class Class1
    {
        static void Main(string[] args)
        {
            // Création de l'objet Timer myTimer
            System.Timers.Timer myTimer = new System.Timers.Timer ();
            Console.WriteLine();
            // Démarage du timer
            myTimer.Start();
            for (int i =0;i<100;i++)
            {
                Console.Write (".");
            }
            // Arret du timer
            myTimer.Stop();
            Console.WriteLine();
            // Récuperer le tps qui s'est écouler avec interval
            Console.WriteLine("Temps = " + myTimer.Interval );
            Console.ReadLine();
        }
    }
}

MERCI D'AVANCE

Cordialement Bumcello

C'est pas la rue kétanou mais nous qui sommes à la rue
        
                      &
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Dernière intervention
3 novembre 2008
- 8 nov. 2006 à 17:23
3
Merci
Oui, DateTime fait l'affaire ;p c de l'ordre du milliseconde.

DateTime dt = DateTime.Now;
//tu fais tes instructions
Console.WriteLine("Durée : " + (TimeSpan)(DateTime.Now - dt));

J'ai pas testé mais ça doit fonctionner.

[:D] @++

Merci cs_badrbadr 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 87 internautes ce mois-ci

Commenter la réponse de cs_badrbadr
Messages postés
1025
Date d'inscription
mardi 4 février 2003
Dernière intervention
7 juin 2010
- 8 nov. 2006 à 13:32
0
Merci
Hello,

C'est normal, car l'objet Timer ne sert pas à mesurer le temps, mais à lever un event lorsqu'un délai est passé.
C'est ce délai que retourne la propriété Interval.

Pour calculer un temps comme tu veux le faire, tu peux utiliser simplement les DateTime, en regardant le DateTime.Now avant et après et en faisant la différence. Ce n'est pas extêmement prècis, mais ça suffit la plupart du temps.
Si tu as besoin de quelque chose de plus précis, tu peux regarder du côté des Stopwatch

Amicalement, SharpMao
Commenter la réponse de SharpMao

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.