webForumDet fria alternativet
Logga in / Bli medlem

do - loop fråga

ASP

3 svar · 314 visningar · startad av room

Medlem sedan mars 2001270 inlägg
Trådstart#1

Hejsan hoppsan..

Vilket är bäst? Att köra SET och SET = Nothing innanför (ex 1) eller utanför en loop (ex 2)?

Exempel 1:

Do UNTIL X = 10
Set ForumData=Server.CreateObject("ADODB.Recordset")
    ForumData.open "SELECT * from forum_tradar;",connect,adOpenStatic,adLockOptimistic

X = X + 1

    ForumData.Close
Set ForumData = Nothing
Loop

Exempel 2:

Set ForumData=Server.CreateObject("ADODB.Recordset")
Do UNTIL X = 10
    ForumData.open "SELECT * from forum_tradar;",connect,adOpenStatic,adLockOptimistic

X = X + 1

    ForumData.Close
Loop
Set ForumData = Nothing
Medlem sedan aug. 20039 340 inlägg
#2

I detta fall så gör det ingen större skillnad, men utanför är mitt svar. För övrigt, varför använder du inte For X=0 To 10 ... Next X?

Medlem sedan mars 2001270 inlägg
#3

loopen är bara fiktiv och ser inte allt ut så.. i själva verket går jag igenom ett annat recordset utanför detta recordset, skrev bara så för att det ska vara enkelt att förstå min fråga..

Finns det något som talar för att det ena eller det andra sparar mer minne? Eller tar det lika mycket minne även om man öppnar och stänger inom loopen som utanför?

Medlem sedan okt. 20041 556 inlägg
#4

Skulle det handla om 500 ggr i loopen så skulle det bli ganska segt om du stängde ditt objekt utanför loopen. Men vad det gäller prestanda är det alltid bra att göra tester.
Använd timer() för att klocka dina appliktioner.

251 ms totalt · 4 externa anrop · v20260731065814-full.7d626504
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)