首页 > 代码库 > c#控制台之制造内存泄露简单办法
c#控制台之制造内存泄露简单办法
c#控制台也能故意制造内存泄露,很多人会问这样做的目的何在,那么一个是可以用来测试,一个呢,嘿嘿,可以用来捆绑自己程序里面,然后设置控制台程序运行但不显示出来,这样是可以达到恶搞的目的的,哈哈!不过仅供娱乐学习用啊!代码如下:
<span style="font-family:Microsoft YaHei;font-size:14px;"> static void Main(string[] args) { while (true) { Thread thr = new Thread(new ThreadStart(testThread)); thr.Start(); //输出程序当前占用的内存量 long memorysize = System.Diagnostics.Process. GetCurrentProcess().PagedMemorySize64; Console.WriteLine(string.Format("MemorySize:{0}MB", memorysize / (1024 * 1024))); Thread.Sleep(500); } } static void testThread() { LinkedList<IntPtr> l = new LinkedList<IntPtr>(); l.AddLast(Marshal.AllocCoTaskMem(88888888)); }</span>
如图所示,如果查看任务管理器你会发现该程序占内存会越来越多……
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。