namespace ForexDatasource.temp
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
aa a = new aa();
}
} public class aa
{
public aa()
{
int i = 0;
} ~aa()
{
int i = 0; //我在这个地方设了一个断点,打开和关闭页面都没有执行到这儿,为什么?
}
}
}
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
aa a = new aa();
}
} public class aa
{
public aa()
{
int i = 0;
} ~aa()
{
int i = 0; //我在这个地方设了一个断点,打开和关闭页面都没有执行到这儿,为什么?
}
}
}
解决方案 »
- "2011-04-18"字符串 怎样转换成 日期型?
- 如何读写取XML中的Json格式数据
- vs2008安装问题
- 真没分了,一个Gridview简单问题
- 最近做好了个.net留言本
- 小数据存入xml文件跟数据库哪个性能更好一些
- 如何在ASP中对 Offic文档 进行编辑、显示、上传、下载、读取数据库操作
- 怎样在net程序里调用用vs tools for office制作好的word文档
- excel 转pdf 问题
- 请(位)大侠___有个验证datagrid 文本框的问题(是否为空,是否为日期型,)在线!在线!
- 类型转换错误,急!!!!!
- 用javascript向列表框( <select>控件 )中添加的列表,为什么在页面提交后,列表被清空了?如何保持?
2,对于一些独占的,很宝贵的资源,建议显示调用调用
我想说的是楼主如果一定要测试的话是可以的!!
页面加一个Button,Button的click打一句代码;
程序改成这样:
public partial class Default7 : System.Web.UI.Page
{
aa a;
protected void Page_Load(object sender, EventArgs e)
{
a = new aa();
}
protected void Button1_Click(object sender, EventArgs e)
{
GC.SuppressFinalize(a);//执行垃圾清理,但并不马上执行,看系统的情况
}
}public class aa
{
public aa()
{
int i = 0;
}
~aa()
{
//int i = 0; //我在这个地方设了一个断点,打开和关闭页面都没有执行到这儿,为什么?
}
} 端点设在~aa()下的花括号上,
可这样试验,启动,多按几次button,退出再启动,反复来几次总有一次会执行到断点!!
{
protected void Page_Load(object sender, EventArgs e)
{
comData mydata = new comData( "forexds" );
//数据库操作
}
} public class comData
{
public System.Data.OleDb.OleDbConnection myConn;
public static string connstr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0}../database/{1}.mdb;User Id=admin;Password=;"; public comData( string dbname )
{
myConn = new System.Data.OleDb.OleDbConnection();
myConn.ConnectionString = string.Format( connstr, System.AppDomain.CurrentDomain.BaseDirectory, dbname );
myConn.Open();
} ~comData()
{
if( myConn != null && myConn.State != ConnectionState.Closed )
myConn.Close(); myConn = null;
}
//其它方法
} } 我的本意是,代码结束后,系统自动调用析构函数~comData(),销毁Page_Load中的mydata,关闭数据库。
可是实际上,我打开页面,然后关闭页面,~comData()一直没有被调用。数据库一直开着,被打开的ACCESS数据库有一个ldb临时文件一直都在。
我现在用的方法就是在Page_Load中手动销毁mydata,关闭数据库,但是觉得不规范,也麻烦,每个页面中都要写。请高手指点:1. ~comData()为什么没有被调用? 2. 是不是我的总思路有问题?