guestyy
Дата: 16.10.2005 13:37:23
пишу "5" строчное приложение
this.sqlConnection1.ConnectionString = "packet size=4096;" +
"data source=\"HOMER\";persist security info=False;" +"initial catalog=Northwind;User id=sa;Pwd=suvorov;";
this.sqlConnection1.Open(); здесь память возрастает на 15 мегов
//
// sqlCommand1
//
this.sqlCommand1.CommandText = "SELECT CompanyName FROM Customers";
this.sqlCommand1.Connection = this.sqlConnection1;
sqldr = sqlCommand1.ExecuteReader(); здесь память возрастает на ~1 мег
sqldr.Close(); память не уменьшается -- почему????
sqldr = null; память не уменьшается -- почему????
sqlConnection1.Close(); память не уменьшается -- почему????
sqlConnection1 = null ; память не уменьшается -- почему????
sqlCommand1.Dispose(); память не уменьшается -- почему????
sqlCommand1 = null; память не уменьшается -- почему????
viper
Дата: 08.11.2005 22:21:40
А какой смысл? Пусть лучше сборщик сам решит когда прибратся, а так возможно ты освободиш память по минимуму зато потеряеш процессорное время на внештатную работу сборщика. Как по мне вмешиваться в этот процесс надо когда это действительно необходимо.
_________________________________________________
Легче написать не правильную программу чем понять правильную (С) Alan Perlis
Volj
Дата: 11.11.2005 13:03:24
действительно, не парься насчет памяти. Просто примирись с тем, что веб-приложение никогда не займет меньше 50 метров ;)
Сборщик памяти в NET действительно хорош, и GC.Collect вызывать не следует, особенно в Web-приложениях (если не хочешь, чтобы твоя прога существенно тормознула сервак).