好多天没有写blog了,最近解决了一个问题-减少内存占用。不过是有条件的,只能在winxp,win2k中应用此方法,不显示主窗体一直运行的程序最佳。以前程序占用11m内存,我用动态创建窗口的方法只能减少不到100k,应用此方法后内存占用只有496k。把下面的过程放到一个timer中,每隔一段时间执行一次,如5秒。
{
************************************
* clear memory
* from muse2008
************************************
}
procedure clearmemory;
begin
if win32platform = ver_platform_win32_nt then
begin
setprocessworkingsetsize(getcurrentprocess, $ffffffff, $ffffffff);
application.processmessages;
end;
end;