zoukankan      html  css  js  c++  java
  • .NET 自定义类时实现垃圾回收

     1 public class Class1 : IDisposable
     2 {
     3  public Class1()
     4  {
     5  }
     6 
     7  ~Class1 ()
     8  {
     9   //垃圾回收器将调用该方法,因此参数需要为false。
    10   Dispose (false);
    11  }
    12 
    13  //该方法定义在IDisposable接口中。
    14  public void Dispose ()
    15  {
    16   //该方法由程序调用,在调用该方法之后对象将被终结。
    17   //因为我们不希望垃圾回收器再次终结对象,因此需要从终结列表中去除该对象。
    18   GC.SuppressFinalize (this);
    19   //因为是由程序调用该方法的,因此参数为true。
    20   Dispose (true);
    21  }
    22 
    23  //所有与回收相关的工作都由该方法完成
    24  private void Dispose(bool disposing)
    25   {
    26   lock(this//避免产生线程错误。
    27   {
    28    if (disposing)
    29    {
    30     //需要程序员完成释放对象占用的资源。
    31    }
    32 
    33   //对象将被垃圾回收器终结。在这里添加其它和清除对象相关的代码。
    34  }
    35 }
    36 }
  • 相关阅读:
    Zepto swipe 无效(坑)
    Zepto.js-Ajax 请求
    Zepto.js-事件处理
    excel 大文件解析原理实现
    springboot 集成J2Cache
    springboot 单元测试 指定启动类
    springboot 解决 数字长度过长导致JS精度丢失问题
    JS 基本操作
    VUE 动态菜单管理
    VUE router-view key 属性解释
  • 原文地址:https://www.cnblogs.com/Andon_liu/p/2144040.html
Copyright © 2011-2022 走看看