让释放excel进程的小tips

最近用excel.dll导出excel那个小程序收到大家认可,感觉使用很方便,大家都反复使用,单位时间产生大量的excel文件,不知道为什么使用频率增多后,总有excel的进程停不掉,导致生成100份excel报表总有1-2份没有保存。任务管理器一抹多excle的进程。

网上找的

诸如:       System.Runtime.InteropServices.Marshal.ReleaseComObject(MyRange);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(MyBook);
                System.Runtime.InteropServices.Marshal.ReleaseComObject(MyExcel);
 还有这些   GC.Collect();               

                GC.WaitForPendingFinalizers();               

                GC.Collect();               

                GC.WaitForPendingFinalizers();               

 统统不管用。

最后我想是不是用多线程套用模板生成表,每份之间时间太短,excel来不及释放,又被调用造成。最后添了句

System.Threading.Thread.Sleep(100);

一下子就ok了。

真高兴。

 不晓得大家有没有其他好方法,来解决这个问题。请指教下。

转载于:https://www.cnblogs.com/wangxiaosmile/archive/2010/07/23/1783681.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值