webForumDet fria alternativet

Vilket är snabbast?

ASP

5 svar · 435 visningar · startad av flexish

Medlem sedan jan. 200548 inlägg
Frågan#1

Jag håller på och kodar på ett forum och jag undrar vilken av föjlande metoder som är snabbast.
(Jag har satt Response.Buffer till True)

sub ListForums()
	dim rstCat
	
	Call dbOpen()
	
	strSql = "SELECT catId, catTitle, catOrder FROM tblCat ORDER BY catOrder"
	set rstCat = objConn.Execute(strSql)
	
	If not rstCat.EOF Then
		Do Until rstCat.EOF
		%>
			<div id="cat_top"><span>
		<%
			Response.Write rstCat("catTitle")
		%>
			</span></div>
		<%
		rstCat.MoveNext
		Loop
	Else
	%>
		<span class="empty">&nbsp;Det finns inga kategorier i databasen.</span>
	<%
	End If
	
	rstCat.Close : set rstCat = nothing
		 
	Call dbClose()
end sub

eller

sub ListForums()
	dim rstCat
	
	Call dbOpen()
	
	strSql = "SELECT catId, catTitle, catOrder FROM tblCat ORDER BY catOrder"
	set rstCat = objConn.Execute(strSql)
	
	If not rstCat.EOF Then
		Do Until rstCat.EOF
			Response.Write("<div id=""cat_top""><span>")
			Response.Write rstCat("catTitle")
			Response.Write("</span></div>")
		rstCat.MoveNext
		Loop
	Else
		Response.Write("<span class=""empty"">&nbsp;Det finns inga kategorier i databasen.</span>")
	End If
	
	rstCat.Close : set rstCat = nothing
		 
	Call dbClose()
end sub

Med vänlig hälsning
Stefan

Medlem sedan juni 200032 967 inlägg
#2

Mitt tips är att du tar tiden själv i koden. :)

Medlem sedan jan. 200548 inlägg
#3

Okej, skall ta och göra det. Jag återkommer med resultat, det kan vara kunna att veta =)

Tack för tipset

/Stefan

Medlem sedan mars 20032 667 inlägg
#4

Min gissning är att du inte märker skillnad. :)

Lite läsning som skapar tankar, signerade av emission:
http://www.webforum.nu/showthread.php?s=&postid=64211#post64211

Medlem sedan juni 200032 967 inlägg
#5

Det finns ju också ett tredje alternativ:

		Do Until rstCat.EOF
			Response.Write("<div id=""cat_top""><span>" & rstCat("catTitle") & "</span></div>")
		rstCat.MoveNext
		Loop

Jag förstår inte varför du har <span> innanför <div> här (och dessutom har du flera <div> med samma id, och det får du ju inte ha!), men det är en diskussion för ett helt annat forum. ;)

mvh

Medlem sedan maj 200010 687 inlägg
#6

Från mina tester så är det inte så stor skillnad på om man kör med Response.Write eller context-switchar. Context-switchar var något snabbare dock.
@nders variant med konkateneringar är dock det sämsta.

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)