读书人

using关于即使释放资源的用法疑问,该如

发布时间: 2012-04-16 16:20:04 作者: rapoo

using关于即使释放资源的用法疑问
问题就是,具体是什么时候释放资源?

C# code
DataTable dt;using (dt = new DataTable()){    dt.Columns.Add("ID");    DataRow dr = dt.NewRow();    dr["ID"] = "name";    dt.Rows.Add(dr);}int i = dt.Rows.Count;


这个i依然有值。

[解决办法]
对象Dispose后仍然可以访问到它。但是这么做是危险的和绝对不允许的。
[解决办法]
using (dt = new DataTable())
{

} <----到了这个括号就会调用 using里面那个对象的IDispose接口的Dispose方法。

其实是只要出using的作用域就会调用Dispose,包括异常。

这并不是真正的释放,而是调用Dispose而已。

读书人网 >C#

热点推荐