2010-06-10 29 views
0

Je suis dans une situation, dans laquelle mon programme doit effectuer le traitement, puis attendre un certain temps, disons 5 secondes et refaire le même traitement.Logique de programme simple pour appeler la méthode en continu

Je ne sais pas comment implémenter la logique.

J'ai développé une logique, le code est ci-dessous:

private void ProcessEmail() 
    { 
     PprocessEmail:; 

     //Do whatever you want 

     System.Threading.Thread.Sleep(5000); 
     goto ProcessEmail; 
    } 

Qu'est-ce que ce code ne: je ne dispose que d'appeler cette méthode une fois, il fera le traitement puis attendez 5 secondes, puis à nouveau processus. Jusqu'à présent, le code fonctionne très bien, mais j'ai entendu dire que l'utilisation des instructions "goto" n'est pas considérée comme bonne en programmation.

Je veux savoir, y aura-t-il un effet secondaire de ce code ou y a-t-il un autre moyen efficace de faire la même chose?

+0

Vous connaissez l'existence de structures de flux de contrôle telles que "while" et "for"? – zerm

+0

Salut, les gars merci pour la réponse, je sais à propos de la boucle. Mais existe-t-il une autre méthode efficace que la boucle et comme je l'ai fait. Vous comprenez le genre de fonctionnalité que je veux. – nccsbim071

+0

Il y a récursivité, mais je suppose que vous ne voulez pas dans ce cas. Quel est le problème avec les boucles? – zerm

Répondre

2

Regardez les boucles. This article Wiki pourrait être un bon point de départ pour la théorie.

S'il s'agit de C#, ce que vous utiliseriez est un while(true) qui serait bouclé pour toujours.

+0

Salut, les gars merci pour la réponse, je sais à propos de la boucle. Mais existe-t-il une autre méthode efficace que la boucle et comme je l'ai fait. Vous comprenez le genre de fonctionnalité que je veux. – nccsbim071

+0

@ nccsbim071: Je suis un peu confus, la fonctionnalité que vous voulez est en boucle. Le goto le fait d'une manière plus laide. Je ne sais pas, mais ça ne m'étonnerait pas si en interne la boucle et le goto pouvaient être représentés exactement de la même manière et je ne peux pas imaginer qu'il y aurait une manière plus efficace de boucler que via une boucle quelconque ... –

+0

Je pense que vous avez raison, je vais mettre en œuvre le moment. – nccsbim071