完善主體資料,免費贈送VIP會員!
      * 主體類型
      * 企業名稱
      * 信用代碼
      * 所在行業
      * 企業規模
      * 所在職位
      * 姓名
      * 所在行業
      * 學歷
      * 工作性質
      請先選擇行業
      您還可以選擇以下福利:
      行業福利,領完即止!

      下載app免費領取會員

      NULL

      ad.jpg

      二次開發教程:C# 使用弱引用釋放靜態資源

      發布于:2019-07-25 15:13:28

      網友投稿

      更多

          class Program

          {

              static void Main(string[] args)

              {

                  TestClass.Defalut.i = 5;

                  //輸出5

                  Console.WriteLine(TestClass.Defalut.i);

                  GC.Collect();

                  //輸出0,表示Default已經是重新生成的,之前的對象已經被回收


                  Console.WriteLine(TestClass.Defalut.i);


                  TestClass1.Defalut.i = 5;

                  //輸出5

                  Console.WriteLine(TestClass1.Defalut.i);

                  GC.Collect();

                  //輸出5

                  Console.WriteLine(TestClass1.Defalut.i);


                  Console.ReadLine();

              }

          }


          public class TestClass

          {

              private static readonly object locker = new object();


              private static WeakReference _defalut = null;


              public static TestClass Defalut

              {

                  get

                  {

                      if(_defalut==null||!_defalut.IsAlive)

                      {

                          lock(locker)

                          {

                              TestClass tc = new TestClass();

                              _defalut = new WeakReference(tc);

                          }

                      }

                      return _defalut.Target as TestClass;

                  }

              }

              private TestClass()

              {


              }


              public int i = 0;

          }

          public class TestClass1

          {

              private static readonly object locker = new object();


              private static TestClass1 _defalut = null;


              public static TestClass1 Defalut

              {

                  get

                  {

                      if (_defalut == null)

                      {

                          lock (locker)

                          {

                              _defalut  = new TestClass1();

                          }

                      }

                      return _defalut;

                  }

              }

              private TestClass1()

              {


              }


              public int i = 0;

          }

      本文版權歸腿腿教學網及原創作者所有,未經授權,謝絕轉載。

      未標題-1.jpg

      上一篇:二次開發教程:WPF 模板選擇器

      下一篇:二次開發教程:WPF使用其他dll里的樣式

      主站蜘蛛池模板: 日本一区二区三区不卡在线视频| 久久青草精品一区二区三区| 久久精品一区二区三区日韩 | 狠狠爱无码一区二区三区| 国产一区二区精品久久岳| 亚洲AV无码国产一区二区三区| 波多野结衣AV无码久久一区| 一区二区三区杨幂在线观看| 成人精品视频一区二区三区尤物 | 91午夜精品亚洲一区二区三区| 无码人妻久久一区二区三区蜜桃 | 色老头在线一区二区三区| 国产成人片视频一区二区| 国产成人av一区二区三区不卡| 亚洲AV无码一区二区三区网址| 久久久综合亚洲色一区二区三区| A国产一区二区免费入口| 国产精品区一区二区三| 欧美激情国产精品视频一区二区| 亚洲影视一区二区| 亚洲一区影音先锋色资源| 国产乱码精品一区二区三区中文| 国产综合无码一区二区三区| 国产一区三区二区中文在线 | 国产精品毛片一区二区三区| 亚洲AV无码一区二三区 | 亚洲av不卡一区二区三区| 国产日韩精品一区二区三区在线| 日韩视频在线观看一区二区| 日本免费精品一区二区三区| 日本在线视频一区| 波多野结衣AV无码久久一区| 亚洲国产成人一区二区精品区| 在线精品国产一区二区三区| 亚洲色无码一区二区三区| 国产免费一区二区视频| 无码精品黑人一区二区三区 | 亚洲综合一区二区精品导航| 亚欧免费视频一区二区三区| 亚洲Av无码国产一区二区| 国产日韩精品一区二区三区|