说起这个坑货,要说说折腾了好久的bug,项目对方需要在32位系统上使用,C#加载图像扔给C++处理再返回。所以想好了,C#这边加载图像开好内存扔给C++,各自开的内存各自释放。

所以,在32位系统上出问题了,64位的没出现。而周围的同事没有懂C#的,都是懂C/C++的比较多,所以折腾了这么久,一直以为是我C++没写好导致内存不足,还纳闷好奇了好久,用C++调dll都一直没有问题,用C#在64位下调也没有问题,单单就32位会出现内存不足。

然后就阴差阳错的想着把调用C++的函数都屏蔽了再跑,发现占用内存还是止不住的上涨,开始怀疑C#的Bitmap是不是不会自动回收啊,然后查啊查,就发现,是会自动回收的,但是这个自动回收不是立即回收啊,不是作用域内一结束就回收啊,也不是把一个Bitmap对象指向null就会回收啊,而是要调用dispose()函数手动释放内存,然后再指向null啊,不然要等到自动回收内存的机制起作用才会被回收啊!!!!

所以,问题来了,32位系统的程序跑的时候内存是最大只有2G啊,不马上释放掉内存,在GC机制起作用之前,内存会不断上涨,然后就溢出了啊,而64位因为内存大,所以在溢出之前GC机制就起作用啦,内存被回收了,所以没机会溢出啊!!!

所以说,努力的方向不对,你特么就是一坨***。

不作封侯念,

悠然远世纷。

惟应种瓜事,

犹被读书分。

野水多于地,

春山半是云。

吾生嫌已老,

学圃未如君。

略坑的C#自动回收机制的更多相关文章

  1. Web中线程与IIS线程池自动回收机制

    开发Web项目后,部署到 IIS上 ,运行一直稳定,当Web程序中加入了定时任务,或者线程之类的机制后,第二天发现悲催了,定时任务并没有执行,此时重新登录一下网站,定时任务又重新执行.原来IIS默认有 ...

  2. cocos2d-x 添加纹理自动回收机制

    转自:http://www.cnblogs.com/lancidie/archive/2013/04/13/3019375.html 1.不是一个完整的模块,所以不提供完整代码,只提供思路和核心代码. ...

  3. Java -- 深入浅出GC自动回收机制

    1,去年开春去美团和58同城面试的时候第一个问题基本上都是来说说 Java GC机制,当时年轻的我也很耿直,直接说不会,现在想想还是当时年轻啊.刚好这段时间被各大论坛的面试题刷屏,见到最多的也是也是这 ...

  4. BZOJ-1070 修车 最小费用最大流+拆点+略坑建图

    1070: [SCOI2007]修车 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 3624 Solved: 1452 [Submit][Status] ...

  5. hdu 1257 LIS (略坑5

    ---恢复内容开始--- 最少拦截系统 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...

  6. SpringMVC拦截器-路径语法-略坑

    项目中遇到一种场景,登录拦截器需要拦截.html后缀等动态请求,但是发现语法不对头.    <mvc:interceptors>      <mvc:interceptor> ...

  7. JVM的内存区域划分以及垃圾回收机制详解

    在我们写Java代码时,大部分情况下是不用关心你New的对象是否被释放掉,或者什么时候被释放掉.因为JVM中有垃圾自动回收机制.在之前的博客中我们聊过Objective-C中的MRC(手动引用计数)以 ...

  8. react-native 踩坑记

    最近在使用react-native的时候遇到了很多坑,这里给大家分享下 一.样式 react-native 虽然支持flex布局,但是所有的样式均是css样式的一个很小的集合,尤其是在安卓机下问题尤为 ...

  9. [MySQL]使用Begin...End语句的一个坑

    写一个触发器,执行单条语句是OK的. 想执行多条语句,尝试在代码中加入BEGIN END.但一加BEGIN END就报错, 错误信息也很诡异,只说某一行出错了,不符合Mysql的语句规范,提示信息就个 ...

随机推荐

  1. Centos7 nginx配置多虚拟主机过程

    一.前提准备 1.已经安装好了的Centos7服务器 2.ip 为192.168.1.209   [本次的配置ip] 3.确定防火墙等已经关闭 二.nignx配置文件参数详解 要配置多台虚拟主机,就需 ...

  2. 109、Java中String类之截取部分子字符串

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  3. MVC PartialView使用

    https://blog.csdn.net/mss359681091/article/details/51181037

  4. RadioButton 用法

    @Html.RadioButton("rdoNotice", "1ST", true, new { id = "rdoFirstNotice" ...

  5. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 按钮:按钮被点击

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. jqGrid不支持IE8的解决办法

    参考:https://blog.csdn.net/tarataotao/article/details/10376657

  7. less在vscode中的配置方式

    1.在vscode插件中下载easy less这个插件. 2.新建项目,分别建两个文件夹存放less和自动编译好的css,页面中引入文件引css就可以了. 3.根据你的文件位置,在用户设置中设置需要配 ...

  8. Jquery实现下拉tab切换

    //需求:分别点击html,css,js元素时展示对应的列表内容,其他列表内容要自动收起来 //代码如下 <!DOCTYPE html> <html lang="en&qu ...

  9. django-redis和redis连接

    redis连接 简单连接 import redis r = redis.Redis(host=) r.set('foo', 'Bar') print r.get('foo') 连接池 import r ...

  10. STM32学习笔记:创建工程模板

    STM32作为一类高级单片机,在应用中不容小觑. 所以本人从2018年1月1日开始对于STM32系列单片机的学习. 本人所持的型号为:STM32F429ZI-DISCOVERY,M4内核,封装类型为: ...