Maximizing the performance of your algorithms and applications is extremely important and can give you a competitive advantage, a lower cost of ownership, and happier users. Pro .NET Performance explains the internals of Windows, the CLR, and the physical hardware that affect the performance of your applications, and gives you the knowledge and tools to measure how your code performs in isolation from external factors.
The book is full of C# code samples and tips to help you squeeze every bit of juice from your application—lower memory utilization, consistent CPU usage, and fewer I/O operations across the network and disk. Pro .NET Performance will change the way you think about .NET application development.
-
Guides you through performance measurement with a variety of profilers and other tools
-
Explains how OS and CLR internals affect your application’s performance in unexpected ways
-
Provides you with tips and real-life case studies for improving application performance
What you’ll learn
-
Measure your code’s performance with profilers and other tools.
-
Understand where the bottlenecks are and focus on the right area for performance improvement.
-
Manage memory efficiently by interacting properly with the garbage collector.
-
Avoid common pitfalls by choosing the right abstractions.
-
Understand the performance implications of the underlying operating system and runtime.
-
Improve the performance of your applications by parallelization, caching, micro-optimization, and other techniques.
Who this book is for
Pro .NET Performance is for working .NET developers who care about the performance of their applications. It requires basic familiarity with Windows and the CLR, but guides the reader along the way and does not require prior experience with any performance-measurement tools. Pro .NET Performance also offers practical tips, case studies, and low-level knowledge for experienced developers and architects.
Table of Contents
Chapter 1: Performance Metrics
Chapter 2: Performance Measurement Tools
Chapter 3: Type Internals
Chapter 4: Garbage Collection and Finalization
Chapter 5: Collections and Generics
Chapter 6: Concurrency and Parallelism
Chapter 7: Networking, I/O, and Serialization
Chapter 8: Unsafe Code and Interoperability
Chapter 9: Algorithm Optimization
Chapter 10: Performance Patterns
Chapter 11: Web Application Performance