Por que as pessoas pensam que um vazamento de memória no .NET não é o mesmo que qualquer outro vazamento?
Um vazamento de memória ocorre quando você se conecta a um recurso e não o deixa ir. Você pode fazer isso na codificação gerenciada e na não gerenciada.
Em relação ao .NET e outras ferramentas de programação, houve idéias sobre a coleta de lixo e outras maneiras de minimizar situações que farão o seu aplicativo vazar. Mas o melhor método para evitar vazamentos de memória é que você precisa entender o modelo de memória subjacente e como as coisas funcionam na plataforma que você está usando.
Acreditar que o GC e outras magias limparão sua bagunça é o caminho mais curto para vazamentos de memória e será difícil encontrá-lo mais tarde.
Ao codificar de forma não gerenciada, você normalmente limpa, você sabe que os recursos de que se apossar serão de sua responsabilidade, e não do zelador.
Por outro lado, no .NET, muitas pessoas pensam que o GC limpará tudo. Bem, isso faz algum para você, mas você precisa ter certeza de que é assim. O .NET agrupa muitas coisas, portanto, você nem sempre sabe se está lidando com um recurso gerenciado ou não gerenciado e precisa ter certeza do que está lidando. O manuseio de fontes, recursos GDI, diretório ativo, bancos de dados, etc, geralmente é algo que você precisa observar.
Em termos gerenciados, colocarei meu pescoço em risco para dizer que desaparece assim que o processo é encerrado / removido.
Eu vejo muitas pessoas tendo isso, porém, e realmente espero que isso acabe. Você não pode pedir ao usuário que encerre seu aplicativo para limpar sua bagunça! Dê uma olhada em um navegador, que pode ser o IE, FF etc., abra, digamos, o Google Reader, deixe-o ficar por alguns dias e veja o que acontece.
Se você abrir outra guia no navegador, navegar para algum site e fechar a guia que hospedava a outra página que fez o navegador vazar, você acha que o navegador liberará a memória? Não é assim com o IE. No meu computador, o IE consumirá facilmente 1 GiB de memória em um curto período de tempo (cerca de 3-4 dias) se eu usar o Google Reader. Algumas notícias são ainda piores.