zoukankan      html  css  js  c++  java
  • C#中的弱引用

    用代码说明:

    代码
        class Program
        {
            
    static void Main(string[] args)
            {
                DoWork();
                Console.WriteLine(P.Target 
    == null);
                GC.Collect();
                Console.WriteLine(P.Target 
    == null);

                Console.ReadLine();
            }

            
    public static WeakReference P;
            
    public static void DoWork()
            {
                var p 
    = GetPerson();
                P 
    = new WeakReference(p);
            }

            
    public static Person GetPerson()
            {
                
    return new Person();
            }
        }
        
    public class Person : IDisposable
        {
         
            
    public Person()
            {
            
                
    for (int i = 0; i < new Random().Next(1880); i++)
                {
                    
    this.Memo.Append((char)new Random().Next(97123));
                }
            }


            
    public StringBuilder Memo { getset; }


            
    public bool IsDisposed { getset; }
            
    #region IDisposable 成员

            
    public void Dispose()
            {
                
    if (!this.IsDisposed)
                {
                    Console.WriteLine(
    "Person Dispose...");

                    
    this.Memo.Remove(0this.Memo.Length);
                    
    this.IsDisposed = true;
                    GC.SuppressFinalize(
    this);
                }
            }

            
    #endregion

            
    ~Person()
            {
                Console.WriteLine(
    "Person Unctor...");
                
    this.Dispose();
            }
        }
  • 相关阅读:
    C++使用GDI+实现图片格式转换
    易语言调用C++写的DLL
    【PE】手动给PE文件添加一段代码MessageBoxA
    SHGetSpecialFolderLocation获取开始文件夹
    MySQL导入导出数据
    MySQL5.7修改密码
    Elasticsearch 基于external的乐观锁的版本控制
    Elasticsearch修改字段类型 (_reindex)
    es 迁移数据, 重建索引
    SHELL
  • 原文地址:https://www.cnblogs.com/sofire/p/1744266.html
Copyright © 2011-2022 走看看