以前从来没有想过.Net开发居然存在内存无法释放的问题,总是认为GC给我处理好了一切.现在GIS二次开发结合三维球开发,没有想到存在如此严重的内存增长,很快内存就不够用了,导致系统各种不稳定.球体和三维模型就开始闪烁,出现无法创建D3D或GDI+设备,OutOfMemory等错误.最近一直为内存优化的事情头疼,虽然优化了部分内容,问题依然没有解决. 还是总结了一下最近优化的经验: 1.慎重使用单例,单例会始终保持一个静态对象的引用,内存始终不释放,同时单例类的所有成员变量也不会释放.如单例窗体,…