Pro .Net Memory Management: For Better Code, Performance, and Scalability (專業 .Net 記憶體管理:提升程式碼、效能與擴展性)
Kokosa, Konrad, Nasarre, Christophe, Gosse, Kevin
相關主題
商品描述
Understand .NET memory management internal workings, pitfalls, and techniques in order to effectively avoid a wide range of performance and scalability problems in your software. Despite automatic memory management in .NET, there are many advantages to be found in understanding how .NET memory works and how you can best write software that interacts with it efficiently and effectively. This book is your comprehensive guide to writing better software by understanding and working with memory management in .NET, from Framework up to .NET 8.
Thoroughly vetted by the .NET Team at Microsoft, this book contains valuable troubleshooting scenarios designed to help diagnose challenging memory problems. You will also benefit from a multitude of .NET memory management "rules" to live by that introduce methods for writing memory-aware code and the means for avoiding common, destructive pitfalls.
What You'll Learn
- Understand the theoretical underpinnings of automatic memory management
- Take a deep dive into every aspect of .NET memory management, including detailed coverage of garbage collection (GC) implementation, that would otherwise take years of experience to acquire
- Get practical advice on how this knowledge can be applied in real-world software development
- Use practical knowledge of tools related to .NET memory management to diagnose various memory-related issues
- Explore various aspects of advanced memory management, including use of Span and Memory types
Who This Book Is For
.NET developers, solution architects, and performance engineers
商品描述(中文翻譯)
了解 .NET 的記憶體管理內部運作、陷阱和技術,以有效避免軟體中的各種性能和擴展性問題。儘管 .NET 提供自動記憶體管理,但了解 .NET 記憶體的運作方式以及如何最佳化地撰寫與之高效互動的軟體,仍然有許多優勢。本書是您撰寫更佳軟體的全面指南,透過理解和運用 .NET 的記憶體管理,涵蓋從 Framework 到 .NET 8 的內容。
本書經過微軟 .NET 團隊的徹底審核,包含有助於診斷挑戰性記憶體問題的寶貴故障排除情境。您還將受益於多項 .NET 記憶體管理的「規則」,這些規則介紹了撰寫記憶體意識程式碼的方法以及避免常見破壞性陷阱的手段。
您將學到的內容:
- 理解自動記憶體管理的理論基礎
- 深入探討 .NET 記憶體管理的各個方面,包括垃圾回收 (GC) 實作的詳細介紹,這些知識通常需要多年經驗才能獲得
- 獲得如何在實際軟體開發中應用這些知識的實用建議
- 使用與 .NET 記憶體管理相關的工具的實用知識來診斷各種記憶體相關問題
- 探索進階記憶體管理的各個方面,包括使用 Span 和 Memory 類型
本書適合對象:
.NET 開發人員、解決方案架構師和性能工程師
作者簡介
Konrad Kokosa is an experienced software designer and developer with a specific interest in Microsoft technologies, while looking with curiosity at everything else. He has been programming for over a dozen years, solving performance problems and architectural puzzles in the .NET world, and designing and speeding up .NET applications. He is an independent consultant, blogger, meetup and conference speaker, and fan of Twitter (@konradkokosa). He also shares his passion as a trainer in the area of .NET, especially regarding application performance, coding good practices, and diagnostics. He is a Microsoft MVP in the Visual Studio and Development Tools category. He is co-founder of the Dotnetos.org initiative of three .NET fans organizing tours and conferences about .NET performance.
Christophe Nasarre has been developing and shipping software on Microsoft stacks for 30+ years. He has been working as a Technical Reviewer since 1996 on books such as CLR via C# and the last editions of Windows Internals. He provides tools and insights on .NET/Windows development and troubleshooting via Twitter (@chnasarre), and his open-source projects on GitHub. He does all of that on top of his job as a software engineer on the Profiling team at Datadog.
Kevin Gosse has been using Microsoft .NET technologies since the early days, across client, server, and mobile applications. He is Microsoft MVP and is currently employed at Datadog, where he works on the performance of the .NET APM. He writes deep-dive technical articles on his personal blog (minidump.net) and is active on Twitter under the alias @kookiz.
作者簡介(中文翻譯)
Konrad Kokosa 是一位經驗豐富的軟體設計師和開發者,對 Microsoft 技術有特別的興趣,同時對其他所有事物保持好奇。他已經編程超過十年,解決 .NET 世界中的性能問題和架構難題,並設計和加速 .NET 應用程式。他是一位獨立顧問、部落客、聚會和會議演講者,以及 Twitter 的粉絲 (@konradkokosa)。他還作為 .NET 領域的培訓師分享他的熱情,特別是在應用程式性能、良好編碼實踐和診斷方面。他是 Microsoft MVP,專注於 Visual Studio 和開發工具類別。他是 Dotnetos.org 的共同創辦人,這是一個由三位 .NET 愛好者組織的關於 .NET 性能的巡迴和會議活動。
Christophe Nasarre 在 Microsoft 技術堆疊上開發和交付軟體已超過 30 年。他自 1996 年以來擔任技術審查員,參與過如《CLR via C#》和最新版本的《Windows Internals》等書籍的工作。他透過 Twitter (@chnasarre) 和他在 GitHub 上的開源專案提供有關 .NET/Windows 開發和故障排除的工具和見解。他在 Datadog 的 Profiling 團隊擔任軟體工程師的工作之上,還進行這些活動。
Kevin Gosse 自早期開始使用 Microsoft .NET 技術,涵蓋客戶端、伺服器和移動應用程式。他是 Microsoft MVP,目前在 Datadog 工作,專注於 .NET APM 的性能。他在個人部落格 (minidump.net) 上撰寫深入的技術文章,並在 Twitter 上以別名 @kookiz 活躍。