Seite 1 von 1
Verfasst: Mittwoch 17. Februar 2010, 18:36
von /me
tmfdsm hat geschrieben:Ich weiß, dass ich eine Schleife brauche. Mein Problem ist allerdings, dass ich nicht weiß, welche ich brauche, denn:
Würde eine z.B. eine while nehmen, dann würde er halt 5 mal hintereinander die selbe abfrage machen. Ich möchte aber, dass das Programm von sich aus z.B. alle 2 Sekunden diese Abfrage wiederholt, der Rest vom Programm soll aber trotzdem ausgeführt werden. Ich bräuchte dann halt sowas wie z.B. bei Tkinter fenster.mainloop(), nur halt für das MySQL Zeugs.
Das klingt nach Threading.
Schau mal
in diesen Thread.
Verfasst: Mittwoch 17. Februar 2010, 20:09
von tmfdsm
hmm ... wenn ich das jetzt richtig Verstehe, sollte das so sein:
Ich habe mit "def refresh" eine Funktion, bei dessen Aufruf der Chat aktualisiert wird. Dann mach in an den Anfang vom Code "import thread" und mache dann ganz an Schluss, direkt vor root.mainloop(), "thread.start_new(refresh)".
Wenn ich das eingebe, kommt folgende Fehlermeldung:
Code: Alles auswählen
IDLE internal error in runcode()
Traceback (most recent call last):
File "C:\Python26\lib\idlelib\rpc.py", line 235, in asyncqueue
self.putmessage((seq, request))
File "C:\Python26\lib\idlelib\rpc.py", line 332, in putmessage
n = self.sock.send(s[:BUFSIZE])
error: [Errno 10035] Ein nicht blockierender Socketvorgang konnte nicht sofort ausgeführt werden
Habe ich in dem oben genannten etwas falsch gemacht oder habe ich das ganze komplett falsch verstanden?