Quote:
Originally Posted by alpines
@FacePalmMan, das ist schon richtig aber trotzdem falsch.
Eine Sleep-Funktion dient dazu die CPU zu schonen + das Script zu pausieren.
Nimm bei deinem Script mal SleepA(10000) und schau im TaskMgr nach, deine CPU wird ausgelastet was bei einer Sleep(10000) nicht passiert.
Desweiteren möchte ich mal anmerken wer bitteschön einen Sleep von ein paar Mikrosekunden braucht? Wenn man Sleep einsetzen muss dann ist in vielen Fällen das Script falsch gecoded, also finde ich das hier eigentlich unnötig.
|
wenn man diese methode nur für sehr kleine delays benutzt (z.b bei programmen die vom timing her sehr präzise arbeiten müssen), wofür es auch gedacht ist , lastet es den pc nicht so sehr aus.
einige tests haben gezeigt, dass diese SleepA funktion die ich oben gepostet habe nur um schlappe 7000 nanosekunden (=7 mikrosekunden=0.007 millisekunden=) zu langsam geht.
wenn ihr den test selber ausprobieren wollt:
Code:
$C=1
For $i=1 To 1000
$SA=SleepA(1)
$C+=$SA
ToolTip($i)
Next
MsgBox(0,"","Durchschnittlich verbrauchte zeit:"&($C-1)/1000&@CRLF&"Abweichung:"&(($C-1)/1000-1)*1000*1000&" Nanosekunden")
Func SleepA($MS)
$TI=TimerInit()
While TimerDiff($TI)<$MS
WEnd
Return TimerDiff($TI)
EndFunc