dotSpatial MapLineLayer内存泄漏

dotSpatial MapLineLayer memory leak

我正在使用 dotSpatials 地图对象对形状文件执行一些操作。当我使用下面的代码添加图层 (MapLineLayer) 时,我的程序会占用内存,当我完成图层时,我希望恢复内存。我无法处理我的地图对象及其图层。

        Map map = new Map {Projection = ProjectionInfo.FromEpsgCode(epsgCode)};
        try
        {
            map.AddLayer(filePath);
        }

如何正确处理 dotSpatials 地图?

尝试ClearLayers()。如果 Map 对象没有被禁用并且仍然导致内存泄漏,它可能是一个错误......话虽如此,请记住垃圾收集器不会立即释放你的内存 Map 控件超出范围。

如果您愿意,可以在完成地图控件后立即执行 GC.Collect(用于测试目的),但没有必要将此代码放入您的垃圾收集器正确管理应用程序。

GC.Collect();
GC.WaitForPendingFinalizers();