10 Best Books About Concurrency in C#August 20 , 2018
Self-taught programmers may find that there are a lot of headaches that come with asynchronous, multi-threaded, and concurrent programming in C#. If you find yourself stuck, don't fret. We've collected a list of the 10 best books to help you understand these tricky concepts.
The 10 Best Books About Concurrency In C
- "Concurrency in C# Cookbook: Asynchronous, Parallel, and Multithreaded Programming" by Stephen Cleary
- "C# 7 and .NET Core 2.0 High Performance: Build highly performant, multi-threaded, and concurrent applications using C# 7 and .NET Core 2.0" by Ovais Mehboob Ahmed Khan
- "Functional Programming in C#: How to write better C# code" by Enrico Buonanno
- "Multithreading in C# 5.0 Cookbook" by Eugene Agafonov
- "Professional Parallel Programming with C#: Master Parallel Extensions with .NET 4" by Gaston C. Hillar
- "C# Multithreaded and Parallel Programming" by Rodney Ringler
- "Pro Asynchronous Programming with .NET" by Richard Blewett and Andrew Clymer
- "Concurrency in .NET: Modern patterns of concurrent and parallel programming" by Riccardo Terrell
- "Pro .NET 4 Parallel Programming in C#" by Adam Freeman
- "Rx.NET in Action: With examples in C#" by Tamir Dresher
Concurrency Vs. Parallelism
C# is a multi-paradigm, object-oriented, general purpose programming language first developed by Microsoft in 2000. C# is often used to develop web and mobile applications, but more advanced users may find that concurrency is often difficult to code. With that in mind, we have gathered ten of the best books that touch on this topic to help you on your coding journey.
At the #1 spot is "Concurrency in C# Cookbook." In this volume, author Stephen Cleary explores techniques for parallel, asynchronous, and multi-threaded programming. Using data and language features in .NET 4.5 and C# 5.0, he offers readers more than seventy-five code-rich recipes. The book also discusses deprecated coding methods, teaching programmers the right way to do it.
Coming in at #2 is "C# 7 and .NET Core 2.0 High Performance" by Ovais Mehboob Ahmed Khan, which is for developers who have at least basic C# knowledge. This is ideal for programmers who want to take their skills to the next level, specifically on improving their code speed to build high-performance cross-platform applications.
Taking the #3 spot is "Functional Programming in C#." As the title suggests, readers of this volume will learn about applying functional thinking to real-world problems using the C# language. This is written for proficient programmers without prior FP experience. In its more than 400 pages, author Enrico Buonanno effectively uses numerous short code examples and illustrations.
Next, at #4, is "Multithreading in C# 5.0 Cookbook." Written for developers who need a comprehensive guide to multi-threaded programming, this book features several coding recipes, from basic threading to advanced topics like concurrent collections and parallel program patterns. The author, Eugene Agafonov, is head of the web development department at ABBYY in Moscow.
At #5 is "Professional Parallel Programming with C#." Authored by independent software consultant Gaston C. Hillar, this resource explores the power of multiple processing cores using C# 4, .NET 4, and Visual Studio 2010. Techniques such as multi-data instruction, vectorization, and single instruction are discussed to answer complicated concurrent programming issues and develop customized solutions.
Coming in at #6 is "C# Multithreaded and Parallel Programming" by Rodney Ringler, which introduces the advantages of using BackgroundWorker, including TaskParallel thread programming. This is a great resource for coders who want their multiple-core systems to process data faster.
At the #7 spot is "Pro Asynchronous Programming with .NET," which is vital for those who need their programs to be responsive at all times. Authors Richard Blewett and Andrew Clymer describe the synchronization primitives and threading methods that exist in .NET, including basic thread safety, async concepts, and concurrent data structures.
Next, at #8, is "Concurrency in .NET" by seasoned software engineer and Microsoft MVP Riccardo Terrell. He offers this intermediate-level guide to architects, developers, and computer programmers who would like to enhance the performance of multiprocessor machines by using the .NET platform.
At #9 is "Pro .NET 4 Parallel Programming in C#." This volume offers simple and straightforward explanations of its core concepts. The author, Adam Freeman, is an experienced IT professional who has published several books on web development. Here, he explores the key functionality of parallel programming, both old and new.
Finally, at #10, is "Rx.NET in Action" by Tamir Dresher, a senior software architect and a member of the Microsoft programming community in Israel. He wrote this book for readers who understand the basic concepts of O.O.P. and C# coding. Overall, he aims to teach developers how to use the reactive extensions library to build event-driven applications.
Please note that runicsoft.com is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for runicsoft.com to earn fees by linking to Amazon.com and affiliated sites.