We learned a lot in this chapter about working with threads using the BackgroundWorker component. Specifically, we covered:
- Developing applications that are able to create background threads using the BackgroundWorker component, and showing the progress taking advantage of the methods provided by this component for that action
- Programming the threads' code to be executed by the BackgroundWorker
- Understanding the differences between synchronous and asynchronous execution and how they are related to threads
- Reporting the progress of multiple threads in the user interface
- Starting and cancelling threads created using BackgroundWorker instances
- Launching multiple threads using many BackgroundWorker components and certain code patterns
We also discussed ...