我的.Net应用程序是一个4.0版的ASP.net应用程序,有很多数据库更新,网格刷新时会刷新某些执行更新表等事件的网格。)问题是。在我的应用程序中,你会猜测什么是“吃了大量的内存”。(它很容易在几分钟内增长到超过1 1gb )...
我该怎么解决这个问题呢?我应该寻求哪种类型的优化?或者你认为什么是最适合我的合适的方法?
这已经困扰了我一段时间,但我终生无法弄清楚是什么导致了瓶颈。我已经关闭了我的对象等,但不确定瓶颈是在SQL还是ASP.net后端。
发布于 2012-02-15 11:45:17
可能是任何东西。
用于调试此类问题的工具称为内存分析器。某些版本的Visual Studio还包括内存探查器。
作为猜测,我会说您将一些包含数据的对象保存在某个静态变量中,而不是在使用完它后将其释放。
发布于 2012-02-15 11:44:08
下面是我的观点
My .Net应用程序是一个4.0版的ASP.net应用程序,包含大量数据库更新
为ADO.Net使用语句
using (SqlConnection con = new SqlConnection("Your Connection String"))
{
using (SqlCommand cmd = new SqlCommand("Your Stored Procedure Name", con))
{
SqlParameter param = new SqlParameter();
param.ParameterName = "Parameter Name";
param.Value = "Value";
param.SqlDbType = SqlDbType.VarChar;
param.Direction = ParameterDirection.Input;
cmd.Parameters.Add(param);
cmd.ExecuteNonQuery();
}
}和grid会在grid刷新某些事件时刷新,这些事件用于更新表等。
你认为在我的应用程序中“消耗大量内存”是什么?(它很容易在几分钟内增长到超过1 1gb )...
您是否在使用DataSet/DataTable?使用后请立即丢弃。否则你将面临Memory Out of Exception crash。
您可以使用ANTS内存分析器来解决内存泄漏问题
参考
https://stackoverflow.com/questions/9287488
复制相似问题