Я помню, как я видел сообщение о том, что можно получить рисунок в питоне от основного потока, но я не могу его найти. Моя первая попытка идет примерно так, но это не работает. Первоначально это не сбой (в конце концов), но никакого рисунка не происходит. Идея заключается в том, что options
является отображением графических функций, каждая из которых подходит к pyqtgraph или QTWidget и т.д.Получение чертежа с главной нити
from threading import *
from Queue import *
anObject1 = DrawingObject()
anObject2 = DrawingObject()
anObject3 = DrawingObject()
options = {
0 : anObject1.drawing_func,
1 : anObject2.drawing_func,
2 : anObject3.drawing_func,
3 : updateNon,
}
def do_work(item): #item is a tuple with the item at 0 is the index to which function
#print str(item) + "\n"
options[item[0]](item)
def worker():
while True:
item = q.get()
do_work(item)
q.task_done()
q = Queue()
#This function is a callback from C++
def callback(s, tuple):
#options[tuple[0]](tuple) #this works
q.put(tuple) #this does not
num_worker_threads = 3
for i in range(num_worker_threads):
t = Thread(target=worker)
t.daemon = True
t.start()
Вы имели в виду эту тему: https://groups.google.com/forum/#!msg/pyqtgraph/haiJsGhxTaQ/sTtMa195dHsJ – dnozay
Спасибо, что это не так, но это наверняка похоже на хорошее чтение! – Ivan