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.
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.
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
Plusieurs petites questions !
J'ai un
J'ai mis un sleep dedans (ça marche nickel).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 while(test == true) { }
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".
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
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) { }
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.
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 :
Pour l'arrêter :
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 };
Code : Sélectionner tout - Visualiser dans une fenêtre à part Montimer.Stop();
Salut,
Cela ne suffit pas de dire que c'est à proscrire. Peux-tu argumenter?
A+
"Winter is coming" (ma nouvelle page d'accueil)
Partager