Travailleur de fond comment

J’essaie d’implémenter un travailleur d’arrière-plan dans mon programme, afin qu’il ne gèle pas lorsque je lance le programme et commence à récupérer les données dont j’ai besoin.

Je ne sais pas trop comment fonctionne le travailleur d’arrière-plan.

Les travailleurs en arrière-plan sont des threads qui s’exécutent en arrière-plan et fonctionnent sans interrompre / bloquer votre thread principal.

Vous pouvez en lire plus ici .

En termes rapides:

Dans DoWork, faites votre opération de blocage. Chaque fois que vous le pouvez, indiquez à quel point vous êtes avec l’opération à l’aide de (sender as BackgroundWorker).ReportProgress(50); par exemple pour signaler 50% d’achèvement.

Vous pouvez demander à votre fil principal de s’abonner à l’événement “ProgressChanged”, qui peut mettre à jour l’interface graphique ou effectuer d’autres tâches qui devraient se produire lorsque la progression a changé.