c#內(nèi)存釋放 c#會(huì)自動(dòng)釋放托管代碼生成的內(nèi)存,但是其釋放的時(shí)間不及時(shí),對(duì)于大數(shù) 塊的多次讀入會(huì)導(dǎo)致內(nèi)存溢出異常,例如: class A { public void mothed() { for(int i=0;i 銷毀的,根據(jù)這個(gè)發(fā)現(xiàn),改造上面代碼為: class A { public void mothed() { for(int i=0;i class B: IDisposable { DataTable dt; public void exeM() { //讀取大量數(shù)據(jù) dt=DataBaseOper.select("select *..."); } //該方法強(qiáng)制銷毀內(nèi)存 public void Dispose() { dt = null; GC.Collect(); } } 或者不用using,使用try{}catch{}finally{b.Dispose();}。 |