抄段书 ================ for iCount :=0 to 10 do begin {外层循环代码} for iCount2 :=0 to 100 do begin {内层循环代码} end; end;我们假定外层循环代码(不包括内层代码)每执行一次需要 100ms, 循环 10 次要 1s。如果内层循环代码每执行一次要10ms,循环 1000 次也是 1s。由于外层循环代码耗费的时间比内层循环代码要多,有人也许会试图优化外层代码。事实上,整个循环体一共需要运行 11s(内层循环执行 10 次,每次 1s, 共 10s,再加上外层循环代码需要的 1s),如果将外层循环代码执行的时间减到哪怕 1ms,整断代码仍需要执行超过 10s 的时间;如果将内存循环代码的执行时间减到 5ms,整个执行时间则只需越 6s,可大大提高执行效率。因此,优化循环体的内存代码往往可大幅度提高程序的性能,如果开启着编译器优化选项(默认开启),这些都有编译器给你优化,区别不大
================
for iCount :=0 to 10 do
begin
{外层循环代码}
for iCount2 :=0 to 100 do
begin
{内层循环代码}
end;
end;我们假定外层循环代码(不包括内层代码)每执行一次需要 100ms, 循环 10 次要 1s。如果内层循环代码每执行一次要10ms,循环 1000 次也是 1s。由于外层循环代码耗费的时间比内层循环代码要多,有人也许会试图优化外层代码。事实上,整个循环体一共需要运行 11s(内层循环执行 10 次,每次 1s, 共 10s,再加上外层循环代码需要的 1s),如果将外层循环代码执行的时间减到哪怕 1ms,整断代码仍需要执行超过 10s 的时间;如果将内存循环代码的执行时间减到 5ms,整个执行时间则只需越 6s,可大大提高执行效率。因此,优化循环体的内存代码往往可大幅度提高程序的性能,如果开启着编译器优化选项(默认开启),这些都有编译器给你优化,区别不大
比如sqlserver的bulk insert
内循环900次生成一个大sql,提交一次