Java: CPU Usage erhöht sich, wenn sich meine maus bewegt?
Das Problem:
Wenn ich mein Panel einen mouseMotionListener Packe, und selbst wenn die funktion mouseMoved(Event e) nichts beinhaltet, und ich meine Mouse polling auf 60hz packe, erhöht sich die cpu usage, warum?
Alleine der aufruf der funktion verursacht das? Wie kann ich das vermeiden, sodass, wenn ich z.B. in meinem GameMenu bin trotzdem gute updates auf den buttons bekkome
Ich kann code snippets zeigen, wird aber nicht bringen mit ner polling rate von 60 spring der Przess von 0% cpuusage zu 2-3%
1 Antwort
Java muss die vielen Mausbewegungen vom Betriebsystem entgegennehmen, innerhalb der JRE an die registrierten Listener verteilen, dabei ggf. noch die Koordinaten auf das Steuerelement umrechnen, deinen Bytecode dazu finden und aufrufen. Das braucht eben etwas Rechenzeit. Evtl. reicht dir ja auch mouseEntered / mouseExited und der MouseListener, der sollte ressourcensparender sein.