Parallel Programming with C# and .Net: Fundamentals of Concurrency and Asynchrony Behind Fast-Paced Applications
暫譯: C# 與 .Net 的平行程式設計:快速應用程式背後的並發與非同步基礎
Sarcar, Vaskaran
相關主題
商品描述
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.
商品描述(中文翻譯)
如果您需要了解併發性,本書將是您實現高度響應和可擴展代碼所需的先進軟體背後基本原理的指南。對於並行計算的支援是併發性的重要組成部分。併發性是一個高級概念,解決方案並不簡單。許多開發人員曾因其而受挫,至今仍然如此。本書旨在為 C# 開發人員簡化這一概念。它試圖通過使用任務平行庫(Task Parallel Library, TPL)、併發集合、平行 LINQ(Parallel LINQ, PLINQ)、非同步程式設計模式及相關主題來簡化這一概念。
本書首先概述 TPL,並討論任務(Tasks)。理解這些領域是學習本書後續概念的必要條件。您將經歷特殊情境,例如處理例外和取消,接著展示同步技術和併發集合的示範。您將看到平行迴圈的示範,以加速計算。您還將詳細了解 PLINQ。最後,您將學習如何使用 async 和 await 關鍵字簡化非同步程式設計。
本書包含「問答環節」、複習問題和練習(在 .NET 8 和 C# 12 中)。閱讀本書後,您將能夠理解平行程式設計中的高級概念並在您的代碼中實現它們。
您將學到的內容:
- 理解併發和多執行緒開發
- 理解一些現代 C# 特性如何促進平行程式設計
- 演示平行開發的最新模式
本書適合對象:
熟悉 C# 的開發人員,但對平行程式設計完全是初學者。
作者簡介
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.
作者簡介(中文翻譯)
Vaskaran Sarcar 獲得了印度加爾各答的 Jadavpur University 的軟體工程碩士學位,以及印度 Midnapore 的 Vidyasagar University 的 MCA 學位。他曾是國家門戶獎學金得主(2007-2009),並在教育和 IT 行業擁有超過 12 年的經驗。他在早期的職業生涯中(2005-2007)在多所工程學院從事教學工作,之後加入了位於班加羅爾的 HP India PPS 研發中心。在那裡工作直到 2019 年 8 月,他成為了高級軟體工程師和團隊負責人。在 HP 工作了十多年後,他決定完全追隨自己的熱情。現在他是一名獨立的全職作家。