Timerdurchläufe anzeigen lassen



  • Hi!

    Ich hab einen gewöhnlichen Timer erstellt und möchte jetzt wissen, wie oft die OnTimer - Methode pro Sekunde durchlaufen wird. Gibts dazu eine Methode?

    mfg enne



  • hmm du gibst doch bei SetTimer automatisch an in welchem intervall er aufgerufen werden soll?!



  • Nein, dazu gibts keine Methode. Du musst einfach mitzählen & -stoppen.
    z.B. beim 1. Aufruf die Zeit nehmen, beim 101. wieder, Differenz bilden und das durch 100. Der Kehrwert davon ist dann deine Frequenz.

    @(D)Evil:
    Das was man bei SetTimer() angibt ist aber nicht unbedingt das was man bekommt. Bei sehr kleinen Werten kann sich das um einiges reissen. Wenn das Programm mit anderen Messages beschäftigt ist im übrigen auch, da WM_TIMER nur gepostet werden wenn der Message Queue "fad" ist.


  • Mod

    hustbaer schrieb:

    da WM_TIMER nur gepostet werden wenn der Message Queue "fad" ist.

    Genauer WM_TIMER und WM_PAINT werden nur erzeugt wenn GetMessage oder PeekMessage ausgeführt wird. Andernfalls nicht!



  • hast du genau das problem nicht schon mal vor ein paar woachen gehabt enne87?



  • Martin Richter schrieb:

    hustbaer schrieb:

    da WM_TIMER nur gepostet werden wenn der Message Queue "fad" ist.

    Genauer WM_TIMER und WM_PAINT werden nur erzeugt wenn GetMessage oder PeekMessage ausgeführt wird. Andernfalls nicht!

    Jo, und WM_TIMER ist noch dazu eine "low priority" Message, wird also von GetMessage/PeekMessage auch nur dann generiert wenn die Queue (bis auf andere "low priority" Messages) leer ist.
    Das meinte ich mit "fad" 🙂



  • Ok, danke für die Hilfe 😉

    @Boris: Nein, hatte aber auch was mit einem Timer zu tun.

    mfg enne


Anmelden zum Antworten