Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Effective .NET Memory Management
  • Table Of Contents Toc
  • Feedback & Rating feedback
Effective .NET Memory Management

Effective .NET Memory Management

By : Trevoir Williams
4.8 (11)
close
close
Effective .NET Memory Management

Effective .NET Memory Management

4.8 (11)
By: Trevoir Williams

Overview of this book

In today’s software development landscape, efficient memory management is crucial for ensuring application performance and scalability. Effective .NET Memory Management addresses this need by explaining the intricacies of memory utilization within .NET Core apps, from fundamental concepts to advanced optimization techniques. Starting with an overview of memory management basics, you’ll quickly go through .NET’s garbage collection system. You’ll grasp the mechanics of memory allocation and gain insights into the distinctions between stack and heap memory and the nuances of value types and reference types. Building on this foundation, this book will help you apply practical strategies to address real-world app demands, spanning profiling memory usage, spotting memory leaks, and diagnosing performance bottlenecks, through clear explanations and hands-on examples. This book goes beyond theory, detailing actionable techniques to optimize data structures, minimize memory fragmentation, and streamline memory access in scenarios involving multithreading and asynchronous programming for creating responsive and resource-efficient apps that can scale without sacrificing performance. By the end of this book, you’ll have gained the knowledge to write clean, efficient code that maximizes memory usage and boosts app performance.
Table of Contents (12 chapters)
close
close
9
Chapter 9: Final Thoughts

Handling large objects and arrays

This topic requires careful consideration due to the impact that collections of large objects can have on application performance and memory usage. Large objects are typically defined as 85,000 bytes or larger. To improve the efficiency of garbage collection, these objects are allocated in a particular area of the heap known as the Large Object Heap (LOH).

Objects on the LOH are collected during a Gen 2 collection. Because Gen 2 collections are less frequent, large objects can remain in memory longer, increasing memory usage. Since the LOH is not compacted, the heap can become fragmented over time, potentially leading to out-of-memory exceptions or increased memory usage because of the inability to utilize free spaces efficiently.

The garbage collector doesn’t compact the LOH because moving large objects around it is costly. Instead, it removes the memory occupied by large objects when they are no longer in use. As a result, over time...

Unlock full access

Continue reading for free

A Packt free trial gives you instant online access to our library of over 7000 practical eBooks and videos, constantly updated with the latest in tech

Create a Note

Modal Close icon
You need to login to use this feature.
notes
bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY