It's also available in Russian here.
This article comprises the second part of my speech at the multithreading meetup. You can have a look at the first part here and here. In the first part, I focused on the basic set of tools used to start a thread or a Task, the ways to track their state, and some additional neat things such as PLinq. In this part, I will fix on the issues you may encounter in a multi-threaded environment and some of the ways to resolve them.
Contents
- Concerning shared resources
- Possible issues in multi-threaded environments
- Synchronization methods
- Conclusions