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#] Comment faire une pause dans un programme ?


Sujet :

C#

  1. #1
    Membre régulier Avatar de Jimmy_S
    Inscrit en
    Octobre 2005
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 214
    Points : 85
    Points
    85
    Par défaut [C#] Comment faire une pause dans un programme ?
    Bonjour,

    J'ai une méthode qui doit s'executer en boucle mais avec une pause de 10 secondes à chaque fois, comment je peux faire ? :-)

    Jimmy.

  2. #2
    Membre du Club Avatar de Jovial
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 55
    Points : 42
    Points
    42
    Par défaut
    Tu cherches l'équivalent d'un Sleep en C# ? Si c'est le cas, je te propose d'utiliser un Sleep. (namespace System.Threading)

    Thread.Sleep(x); // x en ms

  3. #3
    Membre régulier Avatar de Jimmy_S
    Inscrit en
    Octobre 2005
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 214
    Points : 85
    Points
    85
    Par défaut
    Plusieurs petites questions !

    J'ai un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    while(test == true)
    {
    }
    J'ai mis un sleep dedans (ça marche nickel).

    Maintenant j'ai mis sur ma form un bouton qui set la variable test à false (attribut de classe), hors lorsque j'appuie j'ai l'impression que la variable ne change pas ! Comment faire ?

    De plus cela passe ma fenetre en "ne répond pas".

  4. #4
    Membre confirmé
    Profil pro
    Développeur freelance
    Inscrit en
    Août 2006
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur freelance

    Informations forums :
    Inscription : Août 2006
    Messages : 453
    Points : 586
    Points
    586
    Par défaut
    normal car si tu fais un sleep, le prog ne rend pas la main ...

    Je te proposes plutôt de lancer ta tache avec un thread toutes les x secondes (utilises les timers).


    Mosco

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Points : 88
    Points
    88
    Par défaut
    Citation Envoyé par Jimmy_S Voir le message
    Plusieurs petites questions !

    J'ai un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    while(test == true)
    {
    }
    Juste une petite remarque, c'est plus joli d'écrire simplement :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    while(test)
    {
    }

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Ta variable test, c'est pour une annulation de traitement ?
    Tu peux utiliser un BackgroudWorker. Ainsi, ton interface sera réactive et tu pourras traiter facilement une problématique d'annulation de traitement.

  7. #7
    Membre actif
    Avatar de adaneels
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2006
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Août 2006
    Messages : 236
    Points : 210
    Points
    210
    Par défaut
    ou un timer (vu qu'il voulait faire ça en boucle) et pour l'annuler, arrêter simplement le timer.
    exemple en C# pour .NET 3.5 dans une appli WCF :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DispatcherTimer MonTimer = new DispatcherTimer();
    MonTimer .Interval = new TimeSpan(0, 0, 2); // 2s.
    MonTimer .Tick += delegate(object s, EventArgs args)
    {
       // mettre le traitement régulier à faire ici
    };
    Pour l'arrêter :
    --
    Arnaud DANEELS

  8. #8
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Décembre 2008
    Messages : 256
    Points : 311
    Points
    311
    Par défaut
    Citation Envoyé par MoscoBlade Voir le message
    normal car si tu fais un sleep, le prog ne rend pas la main ...

    Je te proposes plutôt de lancer ta tache avec un thread toutes les x secondes (utilises les timers).
    Mosco
    +1

    Les Sleep, c'est à proscrire
    Il y a toujours au moins deux solutions à un problème.

    http://software-design-development.blogspot.com/

  9. #9
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Cela ne suffit pas de dire que c'est à proscrire. Peux-tu argumenter?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  10. #10
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Décembre 2008
    Messages : 256
    Points : 311
    Points
    311
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    Salut,

    Cela ne suffit pas de dire que c'est à proscrire. Peux-tu argumenter?

    A+
    http://msmvps.com/blogs/peterritchie...d-program.aspx
    Il y a toujours au moins deux solutions à un problème.

    http://software-design-development.blogspot.com/

Discussions similaires

  1. Faire une pause dans un programme
    Par jorg1n dans le forum C
    Réponses: 1
    Dernier message: 12/11/2007, 12h02
  2. Réponses: 18
    Dernier message: 07/06/2007, 18h43
  3. Faire une pause dans le programme
    Par shinobi dans le forum Access
    Réponses: 6
    Dernier message: 13/06/2005, 16h37
  4. [MFC] Faire une pause dans un thread
    Par Kevgeii dans le forum MFC
    Réponses: 3
    Dernier message: 21/02/2005, 11h49
  5. Comment faire une insertion dans un fichier texte ?
    Par Isa31 dans le forum Langage
    Réponses: 10
    Dernier message: 28/12/2004, 09h06

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