optimisation enchainement de IF Vs Select
Publié : lun. 06/juin/2011 12:55
ça fait longtemps que je me demande si il vaut mieux mettre un select ou bien un enchainement de IF/ELSEIF côté performance j'ai donc pondu un petit code pour tester
et bien chez moi c'est le select qui gagne de peu !
avec Pb 4.60b3 x86
23906ms pour le select
24563ms pour le IF
et chez vous ?
et bien chez moi c'est le select qui gagne de peu !

avec Pb 4.60b3 x86
23906ms pour le select
24563ms pour le IF
et chez vous ?
Code : Tout sélectionner
DisableDebugger
#MaxB=9000000
a.d=0
time=0
Symbol.s="aa|bb|cc|dd|ee|ff|gg|hh"
time=ElapsedMilliseconds()
For n=1 To #MaxB
For z=1 To CountString(Symbol,"|")+1
cmd.s=StringField(Symbol,z,"|")
Select cmd
Case "aa":
a+1
Case "bb":
a+1
Case "cc":
a+1
Case "dd":
a+1
Case "ee":
a+1
Case "ff":
a+1
Case "gg":
a+1
Case "hh":
a+1
EndSelect
Next
Next
finala=ElapsedMilliseconds()-time
a.d=0
time=ElapsedMilliseconds()
For n=1 To #MaxB
For z=1 To CountString(Symbol,"|")+1
cmd.s=StringField(Symbol,z,"|")
If cmd="aa"
a+1
ElseIf cmd="bb"
a+1
ElseIf cmd="cc"
a+1
ElseIf cmd="dd"
a+1
ElseIf cmd="ee"
a+1
ElseIf cmd="ff"
a+1
ElseIf cmd="gg"
a+1
ElseIf cmd="hh"
a+1
EndIf
Next
Next
finalb=ElapsedMilliseconds()-time
MessageRequester("Time:",Str(finala)+" "+Str(finalb),#PB_MessageRequester_Ok )