释放资源的一般范式——更锋利的C#代码小记
2018-06-18 01:44:40来源:未知 阅读 ()
public class Photo : IDisposable { //在Finalize函数中调用内部的Dispose方法 ~Photo() { //被自动回收时仅释放托管资源,不释放非托管资源 Dispose(false); } //提供了自命名的释放资源方法 public void Close() { //当显式回收时则释放所有资源 Dispose(true); } #region IDisposable接口显式实现 //显式实现IDisposable接口,避免同时出现Dispose方法和自定义命名方法(Close) public void IDisposable.Dispose() { //释放所有资源 Dispose(true); //避免重复调用Finalize函数 GC.SuppressFinalize(this); } #endregion //内部的Dispose方法,真正实施资源释放工作 protected virtual void Dispose(bool disposing) { if(disposing==true) { //释放托管资源 } //释放非托管资源 } }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 「C++ 」借来的资源,何如还的潇洒? 2020-02-26
- 算法训练 旅行家的预算 2020-02-23
- ACM | 算法 | 快速幂 2019-12-04
- 远程注册表读取,与多线程池的应用 2019-06-14
- 学习C++之内存管理 2019-04-12
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash