Форум сайта python.su
Всем здравствуйте) Я новичок в python. Есть задача - имеется два потока, которые выдают данные на разных частотах. Как разделить эти данные в те моменты времени когда они приходят одновременно?
Вот мой код исполняемого скрипта:
import myThread
from time import ctime, sleep
from threading import Thread
def dg():
sleep(0.5)
dx = 111.156
dy = 111.415
return dx, dy
def bg():
sleep(2)
df = 222.678
dl = 222.945
dK = 222.271
return df, dl, dK
funcs =
t1 = myThread.MyThread(funcs,funcs.__name__)
t2 = myThread.MyThread(funcs,funcs.__name__)
if __name__ == ‘__main__’:
t1.start(), t2.start()
t1.join(), t2.join()
Код для myThread:
import threading
from time import ctime
class MyThread(threading.Thread):
def __init__(self,func,name=''):
threading.Thread.__init__(self)
self.name = name
self.func = func
def getResult(self):
return self.func()
def run(self):
while 1:
self.res = self.func()
print(self.res)
Проблема в том, что когда результаты из функций dg, bg приходят одновременно, то переменная self.res выдает сразу два значения, которые не разделить, а мне их нужно разделять для последующей обработки. Подскажите как это можно сделать на python. Заранее спасибо!)
Офлайн