Растет память
В программе постоянно создаются массивы Array, в результате растет объем используемой памяти. Все объекты массива очищаются, но память не уменьшается. Если свернуть/развернуть программу память очищается. Возможно ли делать очистку программно?
ЗЫ. А еще попробуй просто запускать принудительно сборщик мусора (GC)
SetProcessWorkingSetSize( GetCurrentProcess(), -1, -1 ) ;
Вызывай время отверемени GC.Collect()
Цитата: koval
Вызывай время отверемени GC.Collect()
т.е. вся проблема со сборщиком мусора? Просто удалить объект из памяти нельзя...
Цитата: AndreySar
т.е. вся проблема со сборщиком мусора? Просто удалить объект из памяти нельзя...
Шутник. Ето же .NET. Он тебя к памяти вообще пускать не должен.
Читай про сборку мусора, поколения, визов финалов и будет тебе счастье.
Цитата: AndreySar
т.е. вся проблема со сборщиком мусора?
Дело в том что .NET не вызывает сборщик мусора, грубо говоря, до тех пор, пока у тебя не окончится память, просто если очень нужно вызывай GC, хотя на мой взгляд этого делать не нужно .NET сам заботиться об этом. В обычных случаях сборщик мусора следует вызывать, перед длинной операцией. для того чтобы во время выполнения он не вызывался автоматически.
Цитата:
Просто удалить объект из памяти нельзя...
как сказал Rebbit:
Цитата:
Шутник. Ето же .NET. Он тебя к памяти вообще пускать не должен.
Читай про сборку мусора, поколения, визов финалов и будет тебе счастье.
Так что мануал тебе в помощь