using System;
class MyData
{public int[] dat;public MyData(int size){dat = new int[size];Console.WriteLine($"构造");}~MyData(){Console.WriteLine($"析构");}
}class MyGCCollectClass
{static MyData theData;static void Main(){//测试1MyGCCollectClass.MakeSomeGarbage1();//测试2//MyGCCollectClass.MakeSomeGarbage2();//theData = null;//测试3//var vt = new MyData(1024 * 1024 * 1024);//vt = null;//测试4//theData = new MyData(1024 * 1024);//theData = null;Console.WriteLine("Memory used before collection:       {0:N0}", GC.GetTotalMemory(false));GC.Collect(); Console.WriteLine("Memory used after full collection:   {0:N0}", GC.GetTotalMemory(true));/*** 测试结果* 成功回收:测试1,测试2* 不能回收:测试3,测试4*/Console.Read();}static void MakeSomeGarbage1(){theData = new MyData(1024*1024);theData = null;}static void MakeSomeGarbage2(){theData = new MyData(1024 * 1024);}
}

关于C#内存释放的BUG?相关推荐

  1. 深入分析glibc内存释放时的死锁bug

    通常我们认为一旦内存写溢出,程序就很容易崩溃.所以服务器上通常会对一些重要进程做脚本保护,一旦崩溃立即重新拉起. 最近发现我们一个公共服务内存写溢出时程序没有崩溃,而是卡死了. 为了深入分析原因,我们 ...

  2. Javascript IE 内存释放

    一个内存释放的实例 <SCRIPT LANGUAGE="JavaScript"> <!-- strTest = "1"; for ( var ...

  3. Linux内存管理 brk(),mmap()系统调用源码分析2:brk()的内存释放流程

    Linux brk(),mmap()系统调用源码分析 brk()的内存释放流程 荣涛 2021年4月30日 内核版本:linux-5.10.13 注释版代码:https://github.com/Rt ...

  4. Qt的内存释放策略(内存自动释放机制)

    关于Qt内存释放机制的简单讲解 很多C/C++初学者常犯的一个错误就是,使用malloc.new分配了一块内存却忘记释放,导致内存泄漏.Qt的对象模型提供了一种Qt对象之间的父 子关系,当很多个对象都 ...

  5. CollectGarbage函数--JS清理垃圾,内存释放

    首先看一个内存释放的实例: <SCRIPT LANGUAGE="JavaScript"> <!-- strTest = "1"; for ( ...

  6. javascript的 CollectGarbage函数--垃圾清理,内存释放

    首先看一个内存释放的实例: strTest = "1"; for ( var i = 0; i < 25; i ++ ){ strTest += strTest; } ale ...

  7. openCV内存释放问题

    转载请注明出处:http://blog.csdn.net/xiaowei_cqu/article/details/7586847 前一天把系统整个重写了一遍,脉络清晰了很多,也终于解决了以前很多崩溃, ...

  8. 深拷贝与浅拷贝~动态内存释放有关

    浅拷贝就是对象的数据成员之间的简单赋值,如你设计了一个没有类而没有提供它的复制构造函数,当用该类的一个对象去给令一个对象赋值时所执行的过程就是浅拷贝,如: class A{ public: A(int ...

  9. linux内存系统管理,Linux内存管理之伙伴系统(内存释放)

    Linux内核伙伴系统中页面释放,主函数为free_pages() 一.上层操作 void free_pages(unsigned long addr, unsigned int order){if ...

最新文章

  1. 《强化学习周刊》第29期:Atari 深度强化学习的研究综述、金融强化学习的最新进展...
  2. win10连接蓝牙耳机_苹果手机蓝牙耳机无法连接怎么办?
  3. cocos2d-x 3.0正式版创建project笔记
  4. 后怎么恢复_爬山后小腿肌肉酸痛怎么办 ?这样来恢复!|新生活公社
  5. fckeditor for php 下载,FCKeditor2.3 For PHP 详细整理的使用参考
  6. python 文件服务器
  7. 《天天数学》连载32:二月一日
  8. 百度关键词点击ios_百度推广关键词点击价格高,如何处理?
  9. win7卸载显卡及对应驱动后桌面分辨率不对以及鼠标键盘无反应
  10. Ubuntu下 Tomcat + JSF + Ant + eclipse 开发环境搭建
  11. Java实现穷举_LeetCode 28:实现strStr() Implement strStr()
  12. Vue仿微信朋友圈项目
  13. 谈嵌入式软件分层设计
  14. 港股通Level2介绍
  15. 全面解析《嵌入式程序员应该知道的16个问题》
  16. Excel 高级筛选实现多条件筛选数据
  17. CSDN,hen hao,hen qiang da
  18. 如何预防 CSRF 攻击
  19. 如何添加旺旺客户,淘宝店铺左侧代码
  20. 哈拉德·柯施纳的狡猾

热门文章

  1. 笔记-项目采购管理-采购管理过程(具体过程)
  2. Please install 'webpack-cli' in addition to webpack itself to use the CLI
  3. 谈谈java的线程池(创建、机制)
  4. 讲故事的用户故事样例之1
  5. 过程改进建设中的常见奖励措施
  6. 过程的首要目的是好的结果
  7. windows server 2012 远程连不上_CVE20201350 | Windows DNS Server远程代码执行漏洞通告
  8. 重磅新书 | 《Android 全埋点解决方案》预售正式开启!
  9. PHP下解决Cannot find module (IP-MIB)的问题
  10. WARNING: cell0 mapping not found - not syncing cell0