Book description
Create robust and scalable applications along with responsive UI using concurrency and the multi-threading infrastructure in .NET and C#
About This Book
- Learn to combine your asynchronous operations with Task Parallel Library
- Master C#'s asynchronous infrastructure and use asynchronous APIs effectively to achieve optimal responsiveness of the application
- An easy-to-follow, example-based guide that helps you to build scalable applications using concurrency in C#
Who This Book Is For
If you are a C# developer who wants to develop modern applications in C# and wants to overcome problems by using asynchronous APIs and standard patterns, then this book is ideal for you. Reasonable development knowledge, an understanding of core elements and applications related to the .Net platform, and also the fundamentals of concurrency is assumed.
What You Will Learn
- Apply general multithreading concepts to your application's design
- Leverage lock-free concurrency and learn about its pros and cons to achieve efficient synchronization between user threads
- Combine your asynchronous operations with Task Parallel Library
- Make your code easier with C#'s asynchrony support
- Use common concurrent collections and programming patterns
- Write scalable and robust server-side asynchronous code
- Create fast and responsible client applications
- Avoid common problems and troubleshoot your multi-threaded and asynchronous applications
In Detail
Starting with the traditional approach to concurrency, you will learn how to write multithreaded concurrent programs and compose ways that won't require locking. You will explore the concepts of parallelism granularity, and fine-grained and coarse-grained parallel tasks by choosing a concurrent program structure and parallelizing the workload optimally. You will also learn how to use task parallel library, cancellations, timeouts, and how to handle errors. You will know how to choose the appropriate data structure for a specific parallel algorithm to achieve scalability and performance. Further, you'll learn about server scalability, asynchronous I/O, and thread pools, and write responsive traditional Windows and Windows Store applications.
By the end of the book, you will be able to diagnose and resolve typical problems that could happen in multithreaded applications.
Style and approach
An easy-to-follow, example-based guide that will walk you through the core principles of concurrency and multithreading using C#.
Table of contents
-
Mastering C# Concurrency
- Table of Contents
- Mastering C# Concurrency
- Credits
- About the Authors
- About the Reviewers
- www.PacktPub.com
- Preface
- 1. Traditional Concurrency
- 2. Lock-Free Concurrency
- 3. Understanding Parallelism Granularity
- 4. Task Parallel Library in Depth
- 5. C# Language Support for Asynchrony
- 6. Using Concurrent Data Structures
- 7. Leveraging Parallel Patterns
- 8. Server-side Asynchrony
- 9. Concurrency in the User Interface
- 10. Troubleshooting Parallel Programs
- Index
Product information
- Title: Mastering C# Concurrency
- Author(s):
- Release date: October 2015
- Publisher(s): Packt Publishing
- ISBN: 9781785286650
You might also like
book
Concurrency in .NET
Concurrency in .NET teaches you how to build concurrent and scalable programs in .NET using the …
book
Parallel Programming and Concurrency with C# 10 and .NET 6
Leverage the latest parallel and concurrency features in .NET 6 when building your next application and …
book
Multithreading with C# Cookbook - Second Edition
Over 70 recipes to get you writing powerful and efficient multithreaded, asynchronous, and parallel programs in …
video
Hands-On Parallel Programming with C# 8 and .NET Core 3.0
With the new industry standard of increasing the processing power of machines, the concept of parallel …