Então, li um pouco sobre a Coleta de Lixo recentemente, por curiosidade, e há algo repetido com frequência: a coleta de lixo pode levar a um abrandamento repentino do programa, dependendo da "profundidade" da coleta.
Mas nos videogames, há um momento em que o usuário não consegue perceber um pequeno atraso: a tela de carregamento. Então, pensei, talvez seja útil prosseguir para a coleta de lixo completa durante uma fase de carregamento (via Collect ()), ter que esperar um segundo ou dois a mais não deve realmente afetar o usuário.
Minha pergunta é: é realmente útil ou não há benefício real em fazer isso?
Respostas:
Sim, chame como a última coisa que você faz ao carregar.
Isso maximizará o tempo entre o início do nível e o primeiro atraso devido a um GC.
Você também deve tentar minimizar as alocações em geral também, para não ter mais atrasos durante um nível.
Veja baixo desempenho em 360 e WP7 e caminhos duplos para o Nirvana do coletor de lixo
fonte