Frage

Wenn mein Skript schläft meine IDE Schlösser für 50sec bis was sehr ärgerlich ist. Ich kann Registerkarten wechseln, schaue durch meine Quelle, Typ-Code, etc. Es in pylde und PyScripter geschieht, ich habe andere IDEs versucht. Was kann ich tun, um dieses Problem beheben? Ich bin eigentlich tun

for i in range(0, timeInSeconds): time.sleep(1) 

Hoffnung, die IDE einmal pro Sekunde aktualisiert werden, aber es funktioniert nicht so aussehen. Was kann ich tun, um dieses Problem beheben?

War es hilfreich?

Lösung

Ich gehe davon aus Sie Ihren Code ausgeführt wird aus den IDE?

Ihre IDE blockiert wahrscheinlich während der Code ausgeführt wird. Suchen Sie nach einer Einstellung von einer Art, die dieses Verhalten steuern könnte, sonst glaube ich, die einzige Wahl wäre IDE zu ändern. (Oder führen Sie den Code von außerhalb des IDE)

Andere Tipps

Können Sie Ihr Skript konfigurieren extern ausgeführt werden? Ich weiß nicht, über die spezifische IDEs, aber ich würde versuchen, einen anderen Prozess für das Debuggen Skript zum Laichen und sie nicht unter dem IDE ausführen. Wenn das nicht hilft, dann ist es ein Problem des IDEs.

Das Problem ist Ihre IDE nicht Python. Ich habe nicht schlafen verwenden, die oft, ich habe es gerade versucht, auf dem Eric IDE und Sie können verwenden Ihre IDE, während der Code ausgeführt wird, und Schlafen. Wenn nicht, geben Sie Ihre IDE, dies zu tun, und Sie müssen es dann IDE zu ändern betrachten oder den Code von der Konsole ausgeführt werden.

Ich persönlich denke, Sie sollten nie jemals Code in derselben Schleife wie IDE auszuführen. Da die meisten IDEs eine GUI mainloop laufen, führt dies zu blockieren komplettes Einfrieren der Benutzeroberfläche. Es ist nur Ärger bringen, und ich würde beiden Fehlerberichte gegen diese IDEs herausnehmen.

Ich vermute, dass das Problem der IDE in einer Schleife sitzt wartet das Skript zu beenden.

Das ist an sich kein Problem, vorausgesetzt, jeder Benutzer erzeugte Nachrichten noch bearbeitet werden, während die IDE in dieser Schleife ist.

Aber was ich vermute, ist in diesem Fall falsch laufe ist der IDE läuft gerade die Schleife ohne Verarbeitung und Nachrichten und damit die Benutzeroberfläche gesperrt zu sein scheint.

Die IDE müßten entweder Prozess GUI-Nachrichten geändert werden, während in der Schleife oder alternativ braucht es einen Thread zu erstellen, die das Skript auszuführen. Der Faden wird dann im Hintergrund laufen und die GUI bleiben würden ansprechbar.

Zum Beispiel des Zeus for Windows IDE verwendet den Hintergrund-Thread Ansatz und es verfügt nicht über dieses Problem.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top