2016-08-04 14 views
2

Ich wiederhole mein Programm mit IDLE für Debugging-Zwecke, aber es scheint, dass im Laufe der Zeit ich eine Art von Speicherproblem erstellen, die meinen Computer verstopft. Welche Arten von Fehlern mit einer Tkinter GUI, die in Python geschrieben wurden, könnten dies verursachen?Python-Programm verlangsamt Computer nach mehrmaliger Ausführung

Wenn das nicht eine gemeinsame Quelle von Problemen ist, sind meine Einfuhren wie folgt:

import copy 
import pickle 
import re 
import requests as req 
import Tkinter as tk 
import tkMessageBox 
import ttk 

Die andere Quelle, die ich von Anfragen ist zu denken. Ich benutze sowohl Post als auch Get, aber hauptsächlich Post. Gibt es irgendwelche Fehler bei diesen Methoden, die einen Computer verlangsamen würden?

Mein Computer bleibt langsam, nachdem ich alle zugehörigen Fenster geschlossen habe. Dies geschieht erst, nachdem ich das Programm mehrmals ausgeführt und beendet habe. Dies ist kein Problem, da das Programm selbst langsam ist.

Edit: Sieht aus wie das Problem etwas mit IDLE zu tun hat. Ich habe es ziemlich ausführlich über die Eingabeaufforderung ohne Problem ausgeführt. Seltsam.

+0

Sind Sie sicher, dass das Programm beendet wird und nicht hängt, etwas zu tun, nachdem es hätte beendet werden sollen? Versuchen Sie, 'ps aux | grep python, wenn Sie auf Linux/os x sind und sehen, wie viele Instanzen von Python Sie ausgeführt haben. – user3282276

+0

Python hat GC eingebaut, so sehr wenig Chancen auf Speicherbereinigung Probleme. Wenn Sie Hintergrundprozesse als Teil des Programms starten. Stellen Sie sicher, dass Sie alle in allen Fällen von positiven/Fehlerfällen schließen/töten. Machen Sie auch alle Hintergrundprozesse sauber. Schau auch auf ps (im Falle von Linux)/Task-Manager (in Windows) zu sehen, ob es mehrere Instanzen der gleichen ausführbaren oder binären laufen –

+0

Ist dies ohne IDLE passiert? –

Antwort

0

Da das einzige Mal, dass es langsam wird, ist, wenn Sie Idle verwenden und es oft tun. Es kann nur im Leerlauf sein und die Verwendung eines anderen Editors wie pycharm (Download here) wird es beheben.

Wenn das nicht funktioniert, ist es nicht wirklich wichtig, weil Sie es tonnenweise nur mit Leerlauf ausführen würden, während es es testet, und die Benutzer werden es nicht annähernd so oft ausführen und sie werden höchstwahrscheinlich mit der Eingabeaufforderung laufen.

Verwandte Themen