Это сильно зависит от вашего исходного кода. С учетом предоставленной информации все, что я могу сказать, это то, что было бы лучше получить профилировщик памяти и проверить, есть ли место для оптимизации.
Просто чтобы продемонстрировать вам, как можно оптимизировать использование памяти, я хотел бы показать вам следующий пример . Вместо использования конкатенации строк, как это
string x = "";
for (int i=0; i < 100000; i++)
{
x += "!";
}
использование StringBuilder
намного более эффективно для памяти (и времени), так как не выделяет новую строку для каждой конкатенации:
StringBuilder builder = new StringBuilder();
for (int i=0; i < 100000; i++)
{
builder.Append("!");
}
string x = builder.ToString();
Конкатенация в первом примере создает новый строковый объект на каждой итерации, который занимает дополнительную память, которая будет очищаться только во время работы сборщика мусора.