Parallel Programming with C# and .NET: Fundamentals of Concurrency and Asynchrony Behind Fast-Paced Applications
Author: Vaskaran Sarcar (Author)
Publisher finelybook 出版社: Apress
Edition 版次: First Edition
Publication Date 出版日期: 2024-09-18
Language 语言: English
Print Length 页数: 484 pages
ISBN-13: 9798868804878
Book Description
If you need to understand concurrency, this book is your guide to the fundamentals behind the advanced software you seek to implement to achieve highly responsive and scalable code. Support for parallel computation is an essential part of concurrency. Concurrency is an advanced concept and solutions are not straightforward. Many developers have been burned by it and are still being burned by it. This book aims to simplify the concept for C# developers. It tries to simplify the concept using the Task Parallel Library (TPL), Concurrent Collections, Parallel LINQ (PLINQ), Asynchronous Programming Patterns, and related topics.
The book starts with an overview of TPL and discusses Tasks. Understanding these areas is necessary to learn the concepts that follow in the book. You will go through special scenarios, such as handling exceptions and cancellations, followed by demonstrations of synchronization techniques and concurrent collections. You will see demonstrations of parallel loops to speed up the computations. And you’ll understand PLINQ in detail. Finally, you’ll learn how to simplify asynchronous programming with async and await keywords is discussed.
The book contains “Q&A sessions”, review questions, and exercises (in .NET 8 and C#12). After reading the book, you will be able to understand advanced concepts in parallel programming and implement them in your code.
What You Will Learn
- Understand concurrent and multi-threaded development
- Understand how some modern-day C# features can promote parallel programming
- Demonstrate the latest patterns for parallel development
Who This Book Is For
Developers familiar with C# but are absolute beginners for parallel programming.
From the Back Cover
If you need to understand concurrency, this book is your guide to the fundamentals behind the advanced software you seek to implement to achieve highly responsive and scalable code. Support for parallel computation is an essential part of concurrency. Concurrency is an advanced concept and solutions are not straightforward. Many developers have been burned by it and are still being burned by it. This book aims to simplify the concept for C# developers. It tries to simplify the concept using the Task Parallel Library (TPL), Concurrent Collections, Parallel LINQ (PLINQ), Asynchronous Programming Patterns, and related topics.
The book starts with an overview of TPL and discusses Tasks. Understanding these areas is necessary to learn the concepts that follow in the book. You will go through special scenarios, such as handling exceptions and cancellations, followed by demonstrations of synchronization techniques and concurrent collections. You will see demonstrations of parallel loops to speed up the computations. And you’ll understand PLINQ in detail. Finally, you’ll learn how to simplify asynchronous programming with async and await keywords is discussed.
The book contains “Q&A sessions”, review questions, and exercises (in .NET 8 and C#12). After reading the book, you will be able to understand advanced concepts in parallel programming and implement them in your code.
What You Will Learn
- Understand concurrent and multi-threaded development
- Understand how some modern-day C# features can promote parallel programming
- Demonstrate the latest patterns for parallel development
About the Author
Vaskaran Sarcar obtained his Master of Engineering degree in Software Engineering from Jadavpur University, Kolkata (India), and an MCA from Vidyasagar University, Midnapore (India). He was a National Gate Scholar (2007-2009) and has over 12 years of experience in education and the IT industry. He devoted his early years (2005-2007) to the teaching profession at various engineering colleges, and later he joined HP India PPS R&D Hub in Bangalore. He worked there until August 2019 and became a Senior Software Engineer and Team Lead. After working for more than ten years at HP, he decided to follow his passion completely. He is now an independent full-time author.