近期在定位问题时发现使用OleDb打开很大的Excel文件后,即使什么都不操作Colse掉,内存释放了部分,但是并未回到打开前的水平.在Excel 150M,解压缩后900M的场景下,打开后直接Close,内存比打开前多了近90M.如果再次打开关闭,内存不会再增加.但是如果是依此打开多个不同的大型Excel文件,程序很容易内存溢出崩掉.在会用Red Gate进行内存分析时,发现确实是Excel非托管代码,在不断累积内存,想了很久,目前想到的有3种解决方案. 首先,先上问题复现的代码,很简单,就是