C# Concurrent Collections
Offered By: Pluralsight
Course Description
Overview
Learn to use concurrent collections effectively to store data in a multithreaded environment, keeping the code efficient and avoiding data corruption and race conditions.
Making applications concurrent can be a vital part of ensuring good responsiveness and high performance, but standard collections are not designed for concurrent environments. In this course, C# Concurrent Collections, you’ll learn how to use concurrent collections to bring the power of manipulating data in collections to multithreaded scenarios by thinking about problems in a concurrent way. First, you’ll discover how to avoid race conditions and data corruption, and how to use lambdas and closures to complete concurrent collection operations in a thread-safe way. Next, you’ll explore producer-consumer collections, such as stacks and queues. Then, you'll learn how to safely consume all items from a queue when you don’t know if other threads might be adding other items. Finally, you’ll delve into good coding practices to keep your concurrent collection code efficient. By the end of this course, you’ll understand how to safely store data in collections and have multiple threads access that data concurrently, while avoiding the thread synchronization bugs that can otherwise plague concurrent code.
Making applications concurrent can be a vital part of ensuring good responsiveness and high performance, but standard collections are not designed for concurrent environments. In this course, C# Concurrent Collections, you’ll learn how to use concurrent collections to bring the power of manipulating data in collections to multithreaded scenarios by thinking about problems in a concurrent way. First, you’ll discover how to avoid race conditions and data corruption, and how to use lambdas and closures to complete concurrent collection operations in a thread-safe way. Next, you’ll explore producer-consumer collections, such as stacks and queues. Then, you'll learn how to safely consume all items from a queue when you don’t know if other threads might be adding other items. Finally, you’ll delve into good coding practices to keep your concurrent collection code efficient. By the end of this course, you’ll understand how to safely store data in collections and have multiple threads access that data concurrently, while avoiding the thread synchronization bugs that can otherwise plague concurrent code.
Syllabus
- Course Overview 1min
- Collections and Atomic Operations 23mins
- From Dictionary to ConcurrentDictionary 30mins
- ConcurrentDictionary: Avoiding Race Conditions 32mins
- The Producer-consumer Collections: Queues, Stacks, and Bags 23mins
- Avoiding Polling with the BlockingCollection 10mins
- Good and Bad Coding Practices with Concurrent Collections 22mins
- Enumerating Concurrent Collections 17mins
Taught by
Simon Robinson
Related Courses
Distributed Programming in JavaRice University via Coursera Основы разработки на C++: красный пояс
Moscow Institute of Physics and Technology via Coursera Многопоточность
Moscow Institute of Physics and Technology via Coursera LAFF-On Programming for High Performance
The University of Texas at Austin via edX Android-разработка: основы, многопоточность, архитектура
Moscow Institute of Physics and Technology via Coursera