C#内存泄漏解决步骤

Error:outofmemory

Solution:

内存检测工具有: MicroSoft Memory Profiler,dotTracePerformance,.NetFrameworkDeveloperBundle等。

1.跟踪出窗体关闭后触发的一系列事件顺序:
MainFrm.FormClosing
GISControl.ParentForm.FormClosing
MainFrm.FormClosed
MainFrm.Dispose(){
    GISControl.Dispose(){
        MapView.Dispose()
    }
}
2.包裹axMapControl的父类跟axMapControl相关的事件都解除注册,引用尽量最后都置为null.
3. axMapControl上+=注册的事件都解除-=
4. ESRI.ArcGIS .ADF.ComReleaser. ReleaseCOMObject(axMapControl);
axMapControl.Dispose();
axMapControl=null;


你可能感兴趣的:(C#内存泄漏解决步骤)