The KB article every one should know about

Have you read http://support.microsoft.com/?kbid=307340? If not, I suggest you do so. If you need convincing or simply want to know why this problem occurs I suggest you keep reading. The problem described in the article above can cause your application to spike in CPU time, Memory usage or both. This will lead to your application…

10

Common reasons why your application pool may unexpectedly recycle

If your application crashes, hangs and deadlocks it will cause/require the application pool to recycle in order to be resolved, but sometimes your application pool inexplicably recycles for no obvious reason. This is usually a configuration issue or due to the fact that you’re performing file system operations in the application directory. For the sake of elimination…

10

Finalizers and weak references

What do finalizers and weak references have in common? Well more than you might think actually.   Finalizers Finalizers are clean-up code that will be run at the end of an objects life-cycle. You should only release native resources in the finalizer. When you use your object you should not the finalizer cleaning up after you….

2

Memory management in the .NET Framework

This is a subject that has been covered before and I have no intention of writing the ultimate post on the subject. Still I think this is something that every good developer should know. Why do I need to know this? My colleagues and I are quite often asked about the necessity of knowing how…

12

Why adding more memory won’t resolve OutOfMemoryExceptions

Quite often I am met with the incorrect assumption that out of memory exceptions can be resolved by adding more memory. I can understand why you’d think that, but actually it won’t matter at all. Additional RAM may increase performance, but an additional 8GB of memory won’t increase the available amount of memory for the…

7

My language of choice can’t decode an URIEncoded string

Problem: Some time ago I was asked to help in decoding an URI Encoded string from VB6. URL Decoding is simple enough, but when you’re working with Greek, Hebrew, etc. that just isn’t enough. Resolution: A quick search revealed a truckload of samples on how to do URL Decoding, but URI Decoding is a bit…


I’ve upgraded and now my application doesn’t work anymore

Scenario: A quite common scenario when working in the support industry is a call along theese lines: “My application worked just fine, but now that I’ve upgraded to IE7, IIS6, Vista, etc. it doesn’t work any more. This has got to be a bug! This new version of the software obviously isn’t any good, so when…

11

I am getting OutOfMemoryExceptions. How can I troubleshoot this?

Problem: You’ve written an ASP.NET application that is getting OutOfMemoryExceptions. Cause: Let’s find out… Resolution: Use Windbg to take a look at the heap.   Is it a leak? Take a look at the memory usage of you application using perfmon. If memory is slowly increasing and never released, then you have a leak. If…

13

How to install Windbg and get your first memory dump

Install Windbg Windbg is the tool for the ASP.NET support engineer. It is free and it’s available at www.microsoft.com/whdc/devtools/debugging/default.mspx. The learning curve is steep to say the least, but if you’re interested in finding out what is going on behind the scenes in your application, then Windbg is your new best friend. For information on…

17