long start = GC.GetTotalMemory(true);
string mdbFilePath = @"E:\Workspace\GIS\Data\gadm2.mdb";
string featureClassName = "gadm2";
IWorkspaceFactory pWorkspaceFactory = new AccessWorkspaceFactoryClass();
IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(mdbFilePath, 0);
IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace;
IFeatureClass pFeatureClass = pFeatureWorkspace.OpenFeatureClass(featureClassName);
IFeatureCursor pFeatureCursor = pFeatureClass.Search(null, false);
int i = 0;
IFeature pFeature = null;
while ((pFeature = pFeatureCursor.NextFeature()) != null)
{
Marshal.FinalReleaseComObject(pFeature);
pFeature = null;
i++;
}
Marshal.FinalReleaseComObject(pFeatureCursor);
pFeatureCursor = null;
Marshal.FinalReleaseComObject(pFeatureClass);
pFeatureClass = null;
Marshal.FinalReleaseComObject(pFeatureWorkspace);
pFeatureWorkspace = null;
pWorkspace = null;
pWorkspaceFactory = null;
GC.Collect();
GC.WaitForFullGCComplete();
long end = GC.GetTotalMemory(true);
long useMemory = end - start;
Console.WriteLine("Memory: " + useMemory); // Memory: 0
ArcGIS Engine读取Personal Geodatabase数据
最新推荐文章于 2021-08-16 10:34:37 发布