Frage
Wie führe ich die Tkinter mainloop
und eine unendliche Server-Schleife gleichzeitig im selben Skript aus?
Hintergrund
Ich bin dabei, einen GUI-Server in Tkinter (Python 2.7.3) zu erstellen. Bisher funktioniert das GUI korrekt, der Server funktioniert korrekt, aber ich habe Schwierigkeiten, beides zu integrieren. Soweit ich weiß (korrigiere mich, wenn ich falsch liege), muss der Server in einer unendlichen Schleife laufen, um neue Benutzer zu akzeptieren. Leider benötigt das GUI auch eine unendliche Schleife. Ich frage mich, wie ich beide Schleifen gleichzeitig laufen lassen kann.
Meine aktuelle mainloop-Funktion sieht wie folgt aus (s
ist das Socket-Objekt):
def mainloop(s):
while True:
channel, addr = s.accept()
print "Verbunden mit", addr
Das wird offensichtlich benötigt, um den Server am Laufen zu halten (denke ich). Das Problem ist jedoch, dass diese Schleife vor meinem mainloop
kommt und ich daher Probleme damit habe. Wenn ich es anders herum mache, wird der Server nie geöffnet.
Vollständiger Code
Mein Server-Code ist hier und mein Client ist hier.
Danke!