English | 2020 | ISBN: 1789132410 | 309 Pages | True PDF, EPUB | 18 MB
Take your enterprise application development skills to the next level by mastering parallel programming techniques in .NET and C#.
In today’s world, practically every CPU has multi-core processors. However unless your application has implemented parallel programming, it will fail to utilize the actual processing capacity offered by the hardware. Hands-On Parallel Programming with C# 8 and .NET Core 3 will show you how to write modern software in C# 8 built on .NET Core 3 that is optimized and high performing.
In this book, you will learn how to implement multithreading and concurrency to build optimized applications that harness the power of multi-core processors. Starting with the fundamentals of threading and concurrency, you will learn about the data structure in .NET Core that supports parallelism. The book will cover how to perform asynchronous programming in C# and how to effectively diagnose and debug parallel code. You will learn about the new Kestrel server and the difference in the operating model of IIS and Kestrel. You will also learn about efficient practices like test-driven development and how to unit test your parallel code.
By the end of the book, you will have a deep understanding of the core concepts of concurrency and asynchrony to create responsive applications that are not CPU intensive.
What you will learn
- How to analyze and breakdown a problem statement for parallelism
- The working APM and EAP patterns and how to move legacy code to Task
- Applying reduction techniques to get aggregate results
- How to create PLINQ queries and factors that impact the performance of PLINQ queries
- Solving concurrency problem due to producer consumer race conditions
- The synchronisation primitives available in .NET Core
- How threading model works with IIS and Kestrel
- Make maximum advantages of resources on the server