using中释放资源的问题

using中释放资源的问题,第1张

myDataSet111Dispose()这样的语句要不要都可以,using会自动销毁。

怎么写更快就怎么写,用三段using,等于直接 *** 作三回内存,你于心何忍呀。

把公共部份放到公共的位置,减少过多的循环,减少数据的重复运算,这比你写using对资源节省得多,

using后面的括号表示这里面有重要的资源产生,using下面的{}表示在这段代码运行完后释放掉那个

using的3个作用:

1、引用命名空间,这样就可以直接在程序中引用命名空间的类型而不必指定详细的命名空间。

这个就不用说了吧,比如大家最常用的:using

systemtext;

2、为命名空间或类型创建别名

当同一个cs引用了不同的命名空间,但这些命名控件都包括了一个相同名字的类型的时候,可以使用using关键字来创建别名,这样会使代码更简洁。注意:并不是说两个名字重复,给其中一个用了别名,另外一个就不需要用别名了,如果两个都要使用,则两个都需要用using来定义别名的。

3、使用using语句,定义一个范围,在范围结束时处理对象。(不过该对象必须实现了idisposable接口)。其功能和try

,catch,finally完全相同。

使用using程序块有两个限制:

1、using所对应的对象必须继承idisposable,如果此对象没有继承idisposable接口的话,系统会提示编译错误。

2、using对象检查是静态类型检查,并不支持运行时类型检查,因此如下形式也会出现编译错误。

dispose方法是一个外部方法,系统并不会帮你调用。为了尽早释放对象所占用的资源,所以需要保证dispose方法能尽早被执行。那么在net中提供了一个比较简便的方法,就是对于实现了idisposable接口的类型对象提供了using语句。

1、因为像 StreamReader 、SqlConnection等非net托管的范围,没办法自己释放资源,所以需要using进行手动资源释放,如果超出了花括号的范围,那资源就被释放了

2、除了用using,也可以用try{}catch{} finally{//在这里进行Dispose()}

3、如果不释放资源的话 电脑长时间运行,就导致内存越来越小,最后机器就自动重启了

以上就是关于using中释放资源的问题全部的内容,包括:using中释放资源的问题、求using语句的一个用法、C#读写文件时using是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9465391.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存