我的内存被大量吞噬了,救命呀!!!(100分)

  • 主题发起人 主题发起人 吹飞烟
  • 开始时间 开始时间

吹飞烟

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟最近写了一个数据库小程序,用Delphi连SQL2000,可是数据库中有大量图片 和文字
说明,我一运行程序内存就会被疯狂的吃掉!可是我结束程序后还是居高不下,我一看任
务管理器才知道,是[red]sqlserver.exe[/red]占用了大量的内容,达百M呀。(我的数据库也有百M)
,请问如何才能恢复以前那样,不让它占那么大内存??急急!!!!
 
要释放呀,老兄。
 
打开一个
创建一个
关闭一个
释放一个
 
打开一个表后如果不用了马上关闭
 
关闭表的时候释放内存啊!
 
控制记录的数量和字段的数量

select * from xxx和
select top 10 field1,field2 from xxx所占的内存大不一样。
选择需要显示的字段即可。
 
不用的要立即释放内存
 
是呀,你的图片和文字太占内存;
记得只传有用的数据到客户端,而且一次不要传太多的数据
100笔你就分成10次传。
 
同意楼上兄弟们的意见,最好是创建后释放掉
 
对,先创建再释放
 
>>大量图片和文字说明
对于这种情况要小心,大概你的表结构没有设计好。


 
我在关闭一个窗口时就会把与它相关的ADODataset Close了,可是还是不行呀,要怎样释放呀?
 
什么Free呀?说说。谢谢
 
free就是释放, 释放就是 free, 唉,说不清楚了........还是贴点代码吧

窗体尽量少用自动创建方式, 能用手工创建就一定用手工创建

procedure TMainForm.menuCorporationTypeCodeClick(Sender: TObject);
var
frmCodeCorporationType : TfrmCodeCorporationType;
begin
frmCodeCorporationType := TfrmCodeCorporationType.Create(Self);
try
frmCodeCorporationType.ShowModal;
finally
frmCodeCorporationType.Free;
end;
end;

另外, 有图像存在SQL server中的话,那肯定是比较耗资源的
delphi+sql server开发环境至少128M内存,最好256M
内存。
 
我是动态建立窗体的,但是free后,程序还是占100M内存呀
 
我知道内存被吃是因为数据都放在了ADO的高速缓存中了。也就是放在内存中了。
可是要如何释放呀?急呀!!!!!
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部