έχω ένα πρόβλημα με την python και τα threads. Πιο συγκεκριμένα ο παρακάτω κώδικας λειτουργεί περίφημα σε linux αλλά σε windows xp & mac os x 1.4 κολλάει.
- Κώδικας: Επιλογή όλων
from Tkinter import *
import threading
def figure():
def myfigure():
root=Tk()
root.mainloop()
if threading.active_count()==1:
t = threading.Thread(target=myfigure)
t.start()
elif threading.active_count()>1:
print "thread already running"
figure() # θα εμφανιστεί ένα Tk παράθυρο, άστο ανοιχτό.
figure() # πρέπει να σου πετάξει το thread running
# κλείσε το παράθυρο
figure() # ξαναδημιουργεί το παράθυρο
Στο σημείο αυτό το παράθυρο Tk που άνοιξε, κολάει. Μπορεί να το δοκιμάσει κάποιος και να μου πει τι συμβαίνει σε άλλα συστήματα. Τι λάθος κάνω; (edit: σίγουρα δεν είναι bug)
Σημείωση: χρησιμοποιώ 2.6.2 σε ubuntu, 2.5 & 2.6.2 σε Mac os x, και δε γνωρίζω τι σε windows xp (ενας φίλος το δοκίμασε)


