Como usar o IDisposable para corrigir vazamentos de memória

Eu tenho um aplicativo .net que parece ter um problema de vazamento de memória. O serviço .net inicia cerca de 100 MB de memória, mas sob carga atinge cerca de 400 a 500 MB. A maioria das minhas aulas não possui recursos não gerenciados e os que já implementam IDisposable. Então, minha pergunta é: tapa IDisposable nas minhas aulas ajudaria?

Os 4-500 MB não são preocupantes. A preocupação é que existem 8 serviços diferentes. Cada um é construído usando SharpArch, NServiceBus, Windsor e NHibernate. Meu sentimento é que há algo em um deles que está causando um problema. Minha preocupação é que a memória total de todos os serviços seja de 3,2 a 3,6 GB em 4 GB. Ainda não está lançando exceções OutOfMemory, mas eu gostaria de evitar isso de uma vez. Também usei o dotTrace, que me fornece algumas informações, mas não tenho certeza de como agir com base nessas informações.

questionAnswers(5)

yourAnswerToTheQuestion