Summary

In this chapter, we first learned about the life cycle of managed objects, including garbage collection, the three generations of objects, and the Large Object Heap.

Then, we saw how to gain insight into our application's memory use using counters and CLR Profiler.

This was followed by ways to reduce memory use by managed objects, such as acquire late / release early, and using the StringBuilder to concatenate strings.

We then saw how to reduce memory usage by unmanaged resources, by taking care to dispose them as soon as possible.

Finally, we discussed ways to reduce memory use by sessions.

Now that we've seen how to reduce usage of memory, let's move on to reducing CPU usage.

Get ASP.NET Site Performance Secrets now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.