2009-03-22 7 views
4

J'ai un exemple simple d'une application winforms où je choisis un répertoire dans un sélecteur de répertoire et clique sur un bouton pour faire une boucle dans le répertoire et copier chaque fichier dans le répertoire dans un autre répertoire. Je veux faire la copie de fichier sur un fil d'arrière-plan pour éviter de bloquer l'interface graphique.Threading in .net

je suis à la recherche de la solution la plus simple à:

  1. Créer le fil d'arrière-plan
  2. passer la source et des destinations dans
  3. Obtenez un rappel sur les progrès afin que je puisse montrer une barre de progression sur l'interface graphique thread

Répondre

2

En plus de la réponse ci-dessus, j'ajouterais que BackgroundWorker est idéal pour cela car il peut aussi vous donner des mises à jour de progression. Assurez-vous simplement d'empêcher la ré-entrée - c'est-à-dire que vous devez empêcher la situation où l'utilisateur pourrait redémarrer le travailleur d'arrière-plan avant qu'il ne soit terminé.