Многопроцессорная обработка и tkinter не работают
Я хотел сделать два процесса. Один для основной программы (класс mainclass), а второй для проверки значений переменных для отладки.
Пожалуйста помочь.
<pre>from tkinter import * import time #import multiprocessing from multiprocessing import Process root = Tk() root2 = Toplevel() root2.title("root2") class Mainclass: def __init__(self): root.title("root") frame= Frame(root) b = Button(root,text="button") b.grid() self.x = 55 mainclass = Mainclass() labellist = [] class something: def __init__(self): global mainclass,labellist for x in mainclass.__dict__: #list of instance variables try: l = Label(root2,text=str(x)) l.grid(column=0) i = Label(root2,text=x) i.grid(column=1) labellist.append(i) print("labellist",labellist) except: print("exception") self.otherfunction() def otherfunction(self): while True: time.sleep(2) lenprocess2dict = len(mainclass.__dict__) print(lenprocess2dict) if len(mainclass.__dict__) > lenprocess2dict: for x in range(lenprocess2dict,len(mainclass.__dict__)): l = Label(root2,text=str(mainclass.__dict__[x].keys())) l.grid(column=0) i = Label(root2,text=mainclass.__dict__[x]).grid(column=1) labellist.append(i) lenprocess2dict += 1 else: for x in labellist: index = 0 d = list(mainclass.__dict__.keys()) x.config(text=mainclass.__dict__[d[index]]) index += 1 if __name__ == '__main__': process1 = Process(target=something) process1.start() process1.join() #process1.join() print(process1) #prev worked when e = something() here root.mainloop()
Что я уже пробовал:
У меня есть большая программа, это базовая prpgram, чтобы проверить, что это поведение сохраняется. Я попробовал запустить его пару раз через Sublime Text 3 и IDLE. Здесь нет никаких ошибок, просто ничего не появляется.