亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#垃圾回收機制的詳細介紹

2020-01-24 03:08:24
字體:
來源:轉載
供稿:網友

一、托管代碼/非托管代碼
C#代碼通過C#編譯器編譯成程序集,程序集由微軟中間語言組成,CLR會為程序集開辟一個應用程序域,程序集就是運行在這個應用程序域里面的,應用程序域是相互獨立的,互不影響。
托管代碼:被CLR管理的代碼。
非托管代碼:不被CLR管理的代碼。
分配在??臻g的變量,一旦執行完成其所在的作用域(即大括號范圍)就會被CLR回收。
分配在堆里面的對象,當沒有任何變量引用它的時候,這個對象就被標記為“垃圾對象”(沒有變量引用它),等待垃圾回收器回收。
Eg:

復制代碼 代碼如下:

Person p=new Person();
p=null;//p這時候沒有指向任何對象空間,此時為“垃圾對象”。

二、GC
GC會定時清理堆里面的垃圾對象,GC的清理頻率程序員無法決定,CLR會自動控制。當一個對象標記為垃圾的時候,這個對象不一定會被立即回收。
三、析構函數
1、不能有訪問修飾符,不能有參數。
2、在對象被垃圾回收器回收的時候,析構函數被GC自動調用。
3、執行一些清理善后的操作的時候。
復制代碼 代碼如下:

class Person
{
  ~Person()
 {
    Console.WrilteLine("我是析構函數");
 }
}

四、代
當堆里面的對象有1W個的時候,GC是不是循環1W次來判斷是否為“垃圾對象”,然后對其進行回收呢?答案是否定的,微軟根據實際需要采用了很多種算法來清理堆里面的垃圾對象,其中很重要的一種算法就是“代”。堆里面總共有3代,譬如,當程序運行時,有對象需要存儲在堆里面,GC就會創建第1代(假設空間大小為256K),對象就會存儲在第0代里面,當程序繼續運行,運行到第0代的大小不足以存放對象,這時候就就會創建第1代(假設空間為10M),GC就會把第0代里面的“垃圾對象”清理掉,把“活著”的對象放在第1代,這時候第0代就空了,用于存放新來的對象,當第0代滿了的時候,就會繼續執行以上操作,隨著程序的運行,第1代不能滿足存放要求,這時候就會創建第2代,清理方式如上相同。下圖用于理解以上描述的過程:

GC.GetGeneration(P)得到指定的對象對應的代,總共有三代。
GC.Collect();//讓垃圾回收器對所有的代進行回收。

GC.Collect(1)//回收第0代和第1代回收。

復制代碼 代碼如下:

class Program
    {
        ~Program()
        {
            Console.WriteLine("我是析構函數");
        }
        static void Main(string[] args)
        {
            Program p1 = new Program();
            Console.WriteLine("p對象所在的代:" + GC.GetGeneration(p1));//處在第0代
            GC.Collect();//所有代清除了,包括第0代,這時候存活的對象就存在在第1代了。
            Console.WriteLine("p對象所在的代:" + GC.GetGeneration(p1));
            GC.Collect();//所有代清除了,包括第0代第1代,這時候存活的對象就存在在第2代了。
            Console.WriteLine("p對象所在的代:" + GC.GetGeneration(p1));
            GC.Collect();//最多只有3代
            Console.WriteLine("p對象所在的代:" + GC.GetGeneration(p1));
            p1 = null;//p這時候在第2代了         
            GC.Collect(2);//這時候p1就被回收掉了。
            Console.ReadKey();
        }
    }

結果:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩欧美极品在线观看| 国产欧美在线播放| 欧美大片va欧美在线播放| 亚洲精品日韩欧美| 日韩美女视频免费看| 亚洲码在线观看| 国产精品高潮粉嫩av| 性色av一区二区三区免费| 欧美激情一级欧美精品| 久久亚洲电影天堂| 久久精品久久久久久国产 免费| 亚洲最新在线视频| 欧美国产极速在线| 成人免费xxxxx在线观看| 97视频免费看| 色哟哟网站入口亚洲精品| 91精品视频在线播放| 久久精品久久精品亚洲人| 日韩av在线网页| 欧美美女操人视频| 岛国av在线不卡| 久久久久久久久久久免费精品| 亚洲欧美日韩天堂| 久久久久五月天| 国产91久久婷婷一区二区| 亚洲精美色品网站| 亚洲欧美日本精品| 国产精品网红福利| 亚洲激情 国产| 国产91精品最新在线播放| 欧美激情视频一区| 国产69精品久久久久9| 国产亚洲一区二区在线| 国产精品av电影| 欧美日韩国内自拍| 疯狂欧美牲乱大交777| 欧美在线观看视频| 亚洲精品网站在线播放gif| 日韩av在线电影网| 亚洲国产婷婷香蕉久久久久久| 国产精品一区二区久久久| 欧美激情综合色综合啪啪五月| 大量国产精品视频| 成人免费视频在线观看超级碰| 狠狠做深爱婷婷久久综合一区| 456国产精品| 最新国产精品拍自在线播放| 夜夜嗨av色综合久久久综合网| 精品久久在线播放| 亚洲一区二区中文字幕| 国产精品高潮呻吟久久av野狼| 久久精品在线视频| 亚洲欧美国产精品va在线观看| 久久久久久噜噜噜久久久精品| 久久中国妇女中文字幕| 国产精品美乳一区二区免费| 欧美刺激性大交免费视频| 久久久精品视频在线观看| 欧美极品在线视频| 久久伊人精品一区二区三区| 亚洲第一区在线观看| 久久精品久久久久| 欧美国产中文字幕| 91国自产精品中文字幕亚洲| 国外成人性视频| 98视频在线噜噜噜国产| 国产精品嫩草视频| 日韩一区二区三区xxxx| 中文字幕精品—区二区| 亚洲a级在线播放观看| 亚洲电影成人av99爱色| 亚洲成人av在线| 国产精品成人一区二区| 国产成人免费91av在线| 欧美国产一区二区三区| 国产精品高潮在线| 第一福利永久视频精品| 色婷婷综合成人av| 国产精品一二三视频| 懂色av中文一区二区三区天美| 一夜七次郎国产精品亚洲| 亚洲福利小视频| 国产ts一区二区| 午夜美女久久久久爽久久| 久久国产精品免费视频| 日韩欧美亚洲范冰冰与中字| 日韩精品中文字幕视频在线| 亚洲а∨天堂久久精品喷水| 国产亚洲人成网站在线观看| 日韩在线观看网站| 亚洲午夜激情免费视频| 免费91麻豆精品国产自产在线观看| 羞羞色国产精品| 成人性生交大片免费观看嘿嘿视频| 在线播放精品一区二区三区| 日韩精品极品毛片系列视频| 91av视频在线播放| 欧美日韩精品在线视频| 成人免费直播live| 中文字幕在线视频日韩| 在线一区二区日韩| 国产一区二区精品丝袜| 日韩欧美精品免费在线| 久久噜噜噜精品国产亚洲综合| 日韩免费av一区二区| 亚洲精品国产精品国自产在线| 色婷婷亚洲mv天堂mv在影片| 亚洲aa中文字幕| 亚洲精品一区二区久| 欧美中文字幕在线| 国产精品爱久久久久久久| 日本免费在线精品| 91在线视频一区| 久久久国产一区二区三区| 亚洲午夜久久久影院| 成人在线中文字幕| 黄色一区二区在线| 欧美日韩性视频在线| 中文字幕亚洲综合久久| 欧美性xxxxhd| 91网在线免费观看| 国产精品香蕉在线观看| 最近中文字幕日韩精品| 午夜精品久久久久久久久久久久久| 国产精品久久久久久久久久| 日韩影视在线观看| 亚洲a中文字幕| 欧美激情奇米色| 国产精品偷伦免费视频观看的| 久久99久久久久久久噜噜| 91成人福利在线| 97成人超碰免| 欧美大尺度激情区在线播放| 欧美激情第99页| 欧美午夜激情小视频| 久久韩剧网电视剧| 精品久久久久久中文字幕| 成人亚洲综合色就1024| 日韩在线视频观看正片免费网站| 中文字幕自拍vr一区二区三区| 精品国产31久久久久久| 精品欧美激情精品一区| 亚洲激情电影中文字幕| 成人疯狂猛交xxx| 欧美日韩精品在线播放| 国产精品免费看久久久香蕉| 国产精品自拍偷拍| 国产综合福利在线| 亚洲精品日产aⅴ| 欧美中文在线视频| 97婷婷大伊香蕉精品视频| 欧美日韩激情视频8区| 91av中文字幕| 欧美精品18videosex性欧美| 国产精品视频久久久久| 国产欧美精品一区二区三区-老狼| 亚洲丁香久久久| 亚洲电影免费在线观看| 久久久999精品| 国内精品久久久久影院优| 国产伊人精品在线| 国产精品欧美一区二区三区奶水| 国产精品伦子伦免费视频| 亚洲精品视频在线观看视频|