在维护AccessImport的程序中,发现内存消耗很大。跟踪发现很大一部分原因是dataset消耗的。.net虽然提供了内存的自动回收机制,但显示的释放一些资源还是有必要的。释放资源的方法有两种方法:
1、显式调用dispose()
说明:就是在使用完一个dataset后(或其他消耗内存比较大的控件^_^),调用以下dispose()方法.
2、使用using语句块
说明:实例话一个变量的时候,使用using语句,在对该变量操作完成之后,自动调用dispose释放资源.例如:
public DataSet Rt_DataSet(string str_Sql)
{
using (DataSet ds = new DataSet())
{
try
{
SqlDataAdapter ada = new SqlDataAdapter(str_Sql, conn);
ada.Fill(ds, "dt");
}
catch (Exception ex)
{
}
return ds;
}
}
浙公网安备 33010602011771号