zoukankan      html  css  js  c++  java
  • .NET垃圾回收机制

    昨天面试的时候问到了.NET垃圾回收机制

    CLR中进行垃圾回收,内存管理

    垃圾回收的目的:提高内存利用率

    •垃圾回收器,只回收托管堆中的内存资源,不回收其他资源(数据库连接、文件句柄、网络端口等)。
    •什么样的对象才会被回收?
    –没有变量引用的对象。没有变量引用的对象,表示可以被回收了(null)
    •什么时间回收?
    –不确定,当程序需要新内存的时候开始执行回收。
    –GC.Collect();//手动调用垃圾回收器。不建议使用,垃圾回收时会暂停一下(非常短暂)让程序自动去GC。
    •垃圾回收器中“代”的概念:
    –共3代:第0代、第1代、第2代。
    –各代的回收频率:第0代最高,其次第1代,再次第2代。也就是说越老的对象生存几率越大。
     
    •.net中垃圾回收机制:mark-and-compact(标记和压缩)
     
    垃圾回收机制中0、1、2等级对应的托管堆的初始化大小分别是256K,2M和10M。
  • 相关阅读:
    1006: [HNOI2008]神奇的国度
    1003: [ZJOI2006]物流运输trans
    Task 6.2冲刺会议六 /2015-5-19
    Task 6.2冲刺会议五 /2015-5-18
    Task 6.2冲刺会议四 /2015-5-17
    Task 6.3 场景调研
    Task 8 找水王
    Task 6.2站立会议三
    Task 6.2站立会议二
    Task 6.2站立会议一
  • 原文地址:https://www.cnblogs.com/cheshui/p/2701718.html
Copyright © 2011-2022 走看看