Если вы беспокоитесь о том, что сборка мусора влияет на производительность, одним из лучших инструментов, которые вы можете научиться использовать, является CLR Profiler .Эта утилита позволяет вам профилировать распределения кучи, выполняемые вашей программой, чтобы вы могли определить, какие именно методы генерируют мусор.Помните, что много неочевидных вещей может выделяться в куче: объединение строк, индексирование словарей с ключами перечисления, замыкания, делегаты и т. Д. Даже небольшой мусор, генерируемый один раз за кадр со скоростью 60+ кадров в секунду, может быстро сложитьсяпри правильных обстоятельствах.
Тем не менее, то, что вы описали, для меня не похоже на проблему со сборкой мусора.Как правило, сборщик мусора достаточно быстр, даже во время полного сбора, чтобы вызвать сброс только нескольких кадров - другими словами, вы будете часто замечать незначительный раздражающий рывок, но не постоянное замедление.
(Предостережение: это применимо только к ПК, который имеет очень сложный GC по сравнению с другими платформами XNA.)
Вы должны попытаться подключить профилировщик к своему коду, чтобы определить, какие методы используютсясамый длинный для завершения;если ваша проблема не связана с GC, это может быть информативно.В прошлом я использовал EQATEC , хотя у меня были проблемы с некоторыми из их последних версий.Вы можете попробовать это, или вы можете посмотреть на Google в поисках альтернативы.