Ist ein while True in python ohne sleeps schlecht für meinen Computer?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ja und nein. Es kommt drauf an, was du in dem while machst. Wenn du ununterbrochen etwas tust, was viel Leistung zieht, wirst du es merken. Wenn du aber nur simple Dinge tust, dann macht das dem PC gar nichts


WeissBrot965 
Fragesteller
 06.09.2023, 18:14

Naja brauche den Loop, da ich in der Schleife das locateOnScreen von pyautogui mehrmals verwende. So wie ich python allerdings kenne, bin ich mir ziemlich sicher, dass diese Funktion relativ viel Performance braucht. Deswegen bin ich mir nicht sicher, ob das meinem Pc auf Dauer vielleicht schaden könnte.

0
FaTech  06.09.2023, 18:18
@WeissBrot965

Es liegt eher weniger an Python, sondern mehr an dir. Wenn du den Code gut schreibst, sollte sich nur wenig Datenmüll sammeln und alles ist gut. Ich habe eine Uhr programmiert, die jede Sekunde ein Bild generiert, anhand der Uhrzeit. Dies habe ich zwar nicht in Python gemacht, aber es ist dieselbe Situation. Hätte ich es falsch gemacht, hätte ich den RAM überladen. Da ich es korrekt programmiert habe, ist der RAM Sauber und nur so viel besetzt, wie er wirklich gebraucht wird. Auch vom Prozess her zieht es wenig, da die Aktion harmlos ist

1
WeissBrot965 
Fragesteller
 06.09.2023, 18:19
@FaTech

ok danke. Am Ende könnte ich ja chat gpt noch für Codeverbesserungen fragen

0
FaTech  06.09.2023, 18:20
@WeissBrot965

Joa, aber vorsichtig. Man darf nicht jedem seiner Codevorschläge vertrauen. Manche sind falsch, manche gehen nicht, manche sind alt, usw.

1

Kommt ganz darauf an, was in der Endlosschleife passiert. Wird auf Ein- oder Ausgaben gewartet? Wird etwas gerechnet? Oder wird nur mit "pass" übersprungen?

Im schlimmsten Fall wird ein CPU-Kern nahezu voll ausgelastet und steht damit natürlich nicht für andere Prozesse mehr voll zur Verfügung. Bei den heute üblichen CPUs mit mehreren Kernen (und "Pseudokernen" dazu) wird man das vermutlich kaum bemerken, wenn nicht gerade andere CPU-hungrige Prozesse laufen wollen.


WeissBrot965 
Fragesteller
 06.09.2023, 18:15

Naja brauche den Loop, da ich in der Schleife das locateOnScreen von pyautogui mehrmals verwende. So wie ich python allerdings kenne, bin ich mir ziemlich sicher, dass diese Funktion relativ viel Performance braucht. Deswegen bin ich mir nicht sicher, ob das meinem Pc auf Dauer vielleicht schaden könnte.

0
WeissBrot965 
Fragesteller
 06.09.2023, 18:17
@jo135

ne weiss nicht. Wenn man die Batterie oft zu sehr auslastet, geht ihr ja relativ schnell die Puste aus. Kenn mich mit Technik nicht aus sry

0