IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[C#] Timer pour connaître le temps d'éxecution d'une méthode


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 66
    Points : 40
    Points
    40
    Par défaut [C#] Timer pour connaître le temps d'éxecution d'une méthode
    Bonjour,

    je développe une application qui résoud les sudokus. J'aimerais qu'un Timer comptabilise le temps qu'il faut au programme pour résoudre la grille.
    J'avais pensé faire comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    timer1.Start();
    sudoku.Resolve();
    timer1.Stop();
    Mais là, ca ne fonctionne pas, l'exécution de la méthode Resolve empêche de compter (d'exécuter la méthode Tick du timer), ce qui semble normal.

    Il faudrait que je crée un thread pour exécuter mon timer en parallèle ?

    Merci de m'éclairer sur la voie à suivre.

  2. #2
    Membre expert

    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    1 737
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 737
    Points : 3 137
    Points
    3 137
    Par défaut
    tu récupère la date en cours avant ton appel

    après ton appel tu fait la différence entre la date actuelle et celle que tu as relevée avant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DateTime starttime = DateTime.Now;
    sudoku.Resolve(); 
    TimeSpan tempsecoule = DateTime.Now.Substract(starttime);
    y'a surement 2 / 3 fautes de syntaxe (ca fait un moment que je ne pratique plus la bête), mais ca l'idée est la

    ps : précise le langage que tu utilises (C#) en éditant le premier post

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 62
    Points : 53
    Points
    53
    Par défaut
    Avec le framework 2:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Dim TimeM As System.Diagnostics.Stopwatch = System.Diagnostics.Stopwatch.StartNew()
            TimeM.Start()
            sudoku.Resolve(); 
            TimeM.Stop()
            MessageBox.Show(TimeM.ElapsedMilliseconds.ToString)
    http://msdn2.microsoft.com/en-us/library/ebf7z0sw(en-US,VS.80).aspx

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Vous faites tous très gentiment des efforts pour lui répondre mais nous attendons encore que gmonta en fasse de même lorsque Morpheus lui demande de respecter les règles du Forum
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 66
    Points : 40
    Points
    40
    Par défaut
    Désolé j'étais sûr que j'avais mis le tag [C#]...Un oubli de fin de journée...
    neguib, c'est pas parce que j'ai pas répondu à Morpheus concernant les règles du Forum que je n'en ai pas pris note.

    Sinon merci titi, ca fonctionne comme ca, et même la syntaxe était correcte

    Merci de vos réponses, bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. application pour limiter le temps d'ouverture d'une session
    Par Blue_Strike dans le forum Windows XP
    Réponses: 6
    Dernier message: 24/06/2009, 20h30
  2. Temps d'éxecution d'une requête longue
    Par Adm_Antonio dans le forum Administration
    Réponses: 13
    Dernier message: 04/06/2008, 15h11
  3. Réponses: 7
    Dernier message: 03/04/2008, 10h40
  4. calcul temps d'éxecution d'une fonction
    Par psycho_xn dans le forum C
    Réponses: 8
    Dernier message: 02/02/2008, 19h31
  5. Réponses: 7
    Dernier message: 22/06/2007, 12h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo