2009-06-26 8 views
2

Je dois mettre en œuvre quelque chose. Quelque chose qui pourrait faire une certaine tâche dans mon programme. Par exemple toutes les dix secondes, écrire quelque chose dans un journal dans un fichier. Bien sûr, il est supposé fonctionner dans un thread d'arrière-plan.Sort du planificateur

Où dois-je creuser? Je ne suis pas si familier avec le multithreading. J'ai entendu parler de la classe BackgroundWorker, mais je ne suis pas sûr que ce soit approprié ici ..

+0

On dirait que vous avez juste besoin d'un minuteur ... –

Répondre

4

Utilisez System.Threading.Timer, il va exécuter une tâche dans un thread ThreadPoool. C'est le moyen le plus efficace pour cela.

Voici un exemple, toutes les 10 secondes:

Timer aTimer = new System.Threading.Timer(MyTask, null, 0, 10000); 

static void MyTask(object state) 
{ 
    ... 
} 
0

Vous pouvez utiliser la classe backgroundworker pour cela, mais il semble que vous ayez juste besoin d'utiliser Timer.

+0

pourriez-vous me donner un lien vers un exemple? Merci – Agzam

1

En fait, pour WPF DispatcherTimer serait beaucoup mieux que la minuterie Async.

Questions connexes