Zitat von
3_of_8:
Verstehe ich ehrlich gesagt nicht, denn die Schleife wird ja ständig abgearbeitet, nicht nur wenn grad Messages da sind.
Das denkst du. Es besteht aber ein Unterschied zwischen GetMessage() und PeekMessage(..., PM_REMOVE). GetMessage() ruft intern WaitMessage() auf, womit GetMessage() nur zurückkehrt, wenn eine Botschaft vorhanden ist. Ist keine da, wird der aktuelle Thread schlafen gelegt bis eine Message kommt. Da z.B Application.ProcessMessages PeekMessage() benutzt schnallt die CPU belastung dabei auf 100% hoch, wenn es in einer Schleife ausgeführt wird; wohingegen GetMessage() nahezu 0% CPU Last verschlinkt.