不得不用Delphi2006
为了安心,做了个小测试,比较Delphi7和Delphi2006的内存操作效率。
想法:循环做一亿次申请内存块,移动内存数据,销毁内存块,比较两者时间差距。
代码:
var
s: String;
p: PChar;
i: integer;
Start: Cardinal;
begin
Start := GetTickCount;
s := '123';
for i := 0 to 100000000 do
begin
GetMem(p, 256);
Move(Pointer(s)^, p^, Length(s));
FreeMem(p);
end;
Memo1.Lines.Add(IntToStr(GetTickCount - Start));
end;
结果:
Delphi7 用时:19000 (19秒)
Delphi2006 用时:7063 (大约7秒)
两者相差接近3倍。汗一个!

没有评论:
发表评论