Форум сайта python.su
Была програмка без потоков, (точнее без потоков которые хотят изменять графический оинтерфейс) всё было ОК. ну добавил поток.
print("send_post_by_direct ",user.name,post.data)
try:
T = threading.Thread(None,user.get_Post,name = '%s_send_post_by_direct'%self.name,args=(self,post))
T.start()
except:
print("error Threading send_post_by_direct")
...
code = "A.form.Screen_User_%i.appendPlainText('|%s(far) was deleted|')"%(index,params[1].name)
...
Lock.acquire()
try:
print("befor exec")
exec(code)
print("exec WOCKS")
except:
print("error exec(LOG): "+ code)
Lock.release()
class Lock():
def __init__(self):
self.locked = False
def lock(self):
self.locked = True
def unlock(self):
self.locked = False
while L.locked:
pass
L.lock()
...
L.unlock()
Офлайн
Нельзя менять интерфейс из потока. Следует посылать сообщение.
Офлайн
Ага, тоесть получается нужно сгенерировать сигнал и поймать его в классе . Как сгененрировать сигнал? с параметрами?
Офлайн