O que causa a fragmentação da memória no .NET

Estou usando o perfilador de memória Red Gates ANTS para depurar um vazamento de memória. Ele continua me avisando que:

A fragmentação da memória pode estar fazendo com que o .NET reserver muita memória livre.

ou

A fragmentação da memória está afetando o tamanho do maior objeto que pode ser alocado

Porque eu tenho TOC, esse problema deve ser resolvido.

Quais são algumas práticas de codificação padrão que ajudam a evitar a fragmentação da memória. Você pode desfragmentá-lo através de alguns métodos .NET? Ajudaria mesmo?

questionAnswers(3)

yourAnswerToTheQuestion