Python Prozess Pausieren und wieder Starten (Python, Windows)?

Fido_de02

Newbie
Registriert
März 2022
Beiträge
3
Hi, also ich hab mir eine WallpaperEngine von GitHub runtergeladen (https://github.com/Fantoom/WallEngine). An sich Funktioniert sie recht gut, allerdings braucht sie sehr viel Leistung (20-40% meiner GPU). Ich hab bereits ein Python Script gemacht was schaut ob ich ein anderes Fenster maximiert habe, und falls das der Fall ist wird die WallEngine.exe pausiert. Hier mal mein Code:

https://paste.horlboge.de/peyudujene.py

Alles Funktioniert auch, aber es braucht ca. 8 Sekunden bis die .exe wieder gestartet wurde. Sieht nicht so schön aus, xD. Kennt ihr andere wege als p.suspend() und p.resume(), die schneller sind? Danke im Vorraus und LG!

P.S:
Das Signal Package ist für Windows zwar verfügbar, bietet aber nicht die nötigen Funktionen (Das Betrifft nur Windows, auf Linux würde sich das mit Signal denk ich umsetzen lassen!)
 
Die sauberste Lösung wäre, wenn du den originalen Code änderst und den Check dort machst und den Player pausierst, wenn der Desktop nicht angezeigt wird. Dort hast du auch direkt schon ein Handle zum Wallpaper Fenster und kannst darüber die Visibility checken (z.B anstatt zu prüfen, ob ein beliebiges Fenster maximiert ist, könntest du auch prüfen, ob das Wallpaper Window im Fokus ist)
 
Erst mal danke für deine Antwort. Hätte ich deinen Vorschlag früher gesehen hätte ich das so gemacht (Ich vollhonk hatte diese Idee gar nicht haha). Mittlerweile hat sich das Problem aber auch anders gelöst, das Problem war das p.suspend() und p.resume() die ganze Zeit aufs neue Aufgerufen wurden (Ohne Pause). Ich hab das Script unter dem größten Schlafentzugs meines Lebens geschrieben, xD. Mit einer Variable die schaut ob das Script bereits Pausiert wurde oder nicht hat sich das Problem gelöst. Für jeden den es Interessiert hier mal der Code:

https://paste.horlboge.de/vicipivila.py
 
  • Gefällt mir
Reaktionen: fgordon
Zurück
Oben