搜索文章:

首页  |  Java技术  |  Asp.net  |  Asp编程  |  VC/C++  |  Delphi  |  VB编程

asp性能测试第二部分(转)(十一)

十一、用临时字符串收集输出是一种好方法吗?

这个问题来自对本人最近一篇文章的建议。问题的核心是缓冲的使用,以及是否可以使用临时字符串收集response.write的输出,从而使得response.write只需调用一次即可。为测试这个问题,我们修改了ado_11.asp,在循环中不是每次都用response.write输出,而是把输出附加到一个字符串的末尾,在全部记录处理完毕后调用response.write输出这个字符串(str__01.asp):
dim strtable
strtable = ""

write headings
strtable = strtable & "< table border=1 >< tr >"
for i = 0 to fldcount-1
strtable = strtable & "< th >" & fld(i).name & "< /th >"
next
strtable = strtable & "< /tr >"

write data
do while not objrs.eof
strtable = strtable & "< tr >"
for i = 0 to fldcount-1
strtable = strtable & "< td >" & fld(i) & "< /td >"
next
strtable = strtable & "< /tr >"
objrs.movenext
loop

for i = 0 to fldcount-1
set fld(i) = nothing
next

strtable = strtable & "< /table >"
response.write(strtable)

   这个结果不能令人满意。或许我们应该象有些人建议的那样,先用space函数为字符串分配一些空间,使得程序不必在每次循环的时候再分配空间(str__02.asp):
dim strtable
strtable = space(10000)

()

相关文章:
© 2006   www.java-asp.net