Español
Fuente/ Codesnippets

Zeitbedarf para Message-abholendes Waitinput stark reduzieren (Benchmark)

 

p.specht

Jens-Arne Reumschüssel fand dazu una solución, el sin API-Fummelei auskommt y una deutliche Beschleunigung sowohl en el Interpreter como auch Compiler bringt. Dazu hier mein kleiner Benchmark.
Título de la ventana "Messageabholendes Waitinput beschleunigt:"+\
"     Solución de Jens-Arne Reumschüssel testen"
CLS:Selección aleatoria:font 2
declarar n&,tm&,i&,x&,y&,txt$,ungueltig&
 $IFNDEF COMPILER
txt$="INTERPRETER"
n&=2500
 $ELSE
txt$="COMPILER"
n&=4000
 $ENDIF
AppendMenuBar 100," "+txt$+" zählt a "+str$(n&)+\
".     ESC-Taste se erkannt y ser zerstört el laufenden Test!"
imprimir "\n OHNE Beschleunigung:",:x&=%pos:y&=%csrlin
waitinput 3:sound 200,20:ungueltig&=0
tm&=&GetTickCount

Whileloop n&:locate 20,20:imprimir &Loop;"     ";

    i&=&Loop
    waitinput 3

    if %Key="27":ungueltig&=1:romper:endif

    Endwhile

    tm&=&GetTickCount-tm&
    locate y&,x&

    ifnot ungueltig&: imprimir tm&,"ms"

        más :imprimir "<abgebrochen>":clear ungueltig&

    Endif

    imprimir "\n NUR Fastmode:",:x&=%pos:y&=%csrlin
    waitinput 3:sound 200,20:ungueltig&=0
    tm&=&GetTickCount
    set("Fastmode",1)

    Whileloop n&:locate 20,20:imprimir &Loop;"     ";

        waitinput 3

        if %Key="27":ungueltig&=1:romper:endif

        Endwhile

        set("Fastmode",0)
        tm&=&GetTickCount-tm&
        locate y&,x&

        ifnot ungueltig&: imprimir tm&,"ms"

            más :imprimir "<abgebrochen>":clear ungueltig&

        Endif

        imprimir "\n NUR MIT rnd()-Chance:",:x&=%pos:y&=%csrlin
        waitinput 3::sound 200,20:ungueltig&=0
        tm&=&GetTickCount

        Whileloop n&:locate 20,20:imprimir &Loop;"     ";

            if rnd()>0.95

                waitinput 3

                if %Key="27":ungueltig&=1:romper:endif

                endif

            Endwhile

            tm&=&GetTickCount-tm&
            locate y&,x&

            ifnot ungueltig&: imprimir tm&,"ms"

                más :imprimir "<abgebrochen>":clear ungueltig&

            Endif

            imprimir "\n LÖSUNG de Jens-Arne R.: Fastmode con %PeekMessage:",:x&=%pos:y&=%csrlin
            waitinput 3:sound 200,20:ungueltig&=0
            tm&=&GetTickCount
            set("Fastmode",1)

            Whileloop n&:locate 20,20:imprimir &Loop;"     ";

                if %PeekMessage

                    waitinput 3

                    if %Key="27":ungueltig&=1:romper:endif

                    Endif

                Endwhile

                set("Fastmode",0)
                tm&=&GetTickCount-tm&
                locate y&,x&

                ifnot ungueltig&: imprimir tm&,"ms"

                    más :imprimir "<abgebrochen>":clear ungueltig&

                Endif

                imprimir "\n OHNE JEDE ABFRAGE:",:x&=%pos:y&=%csrlin
                waitinput 3:sound 200,20:ungueltig&=0
                tm&=&GetTickCount

                Whileloop n&:locate 20,20:imprimir &Loop;"     ";

                Endwhile

                tm&=&GetTickCount-tm&
                locate y&,x&

                ifnot ungueltig&: imprimir tm&,"ms"

                    más :imprimir "<abgebrochen>":clear ungueltig&

                Endif

                hold:
                sound 2000,60
                Waitinput 7000:casenot %wmtimer:goto "hold"
                FIN
 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
29.05.2021  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.468 Views

Untitledvor 0 min.
H.Brill07.05.2024
RudiB.07.03.2022
p.specht21.11.2021
R.Schneider20.11.2021
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie