Mise en œuvre d'une boucle à l'aide d'une minuterie en C#
Je voulais remplacer un compteur de base tandis que la boucle avec le minuteur en fonction boucle while en C#.
Exemple :
while(count < 100000)
{
//do something
}
à
while(timer < X seconds)
{
//do something
}
J'ai deux types de minuteries en C# .NET pour cette System.Timers
et Threading.Timers
.
Qui sera la personne de mieux utiliser et comment.Je ne veux pas ajouter un délai supplémentaire de consommation ou d'enfiler des problèmes avec la minuterie.
double possible de Comment exécuter la boucle de temps spécifique
OriginalL'auteur Raulp | 2013-07-02
Vous devez vous connecter pour publier un commentaire.
Utiliser une construction comme ceci:
Être prudent bien que faire sur le thread de l'INTERFACE utilisateur, il permet de bloquer l'entrée.
Je ne le pense pas. Essayez-le et découvrez :).
Il travaille :~) !!
OriginalL'auteur Bart Friederichs
Qu'en utilisant le Chronomètre de classe.
OriginalL'auteur Casperah
Vous pouvez utiliser
Chronomètre
classe au lieu d'entre eux, comme;De
laps de Temps.FromSecond
OriginalL'auteur Soner Gönül
Vous pourriez aussi bien utiliser le
DateTime.Now.Ticks
compteur:Toutefois, cela semble être quelque chose comme occupé attente. Cela signifie que la boucle va provoquer un core de votre CPU de fonctionner à 100%. Il va ralentir les autres processus, la vitesse des ventilateurs un.s.o. Bien que cela dépend de ce que vous avez l'intention de faire, je vous recommande d'inclure
Thread.Sleep(1)
dans la boucle.OriginalL'auteur JeffRSon