尝试线程化用于在PyPubSub中进行订阅的实例方法

时间:2019-05-30 13:20:59

标签: python-3.x multithreading publish-subscribe python-multithreading pypubsub

我正在使用PyPubSub来利用发布/订阅模式。但是,我碰到了砖墙。我正在编写的程序的每个组件都将在其自己的线程中运行。我面临的问题如下:

我有一个带有一个参数的实例方法。通过订阅主题,将此参数传递给此特定的实例方法。但是,在实例化线程对象时,它希望提供参数。

代码(当前在构造函数内部):

pub.subscribe(self.translate,self.topic_name_to_subscribe)
self.thread = threading.Thread(target=self.translate, args=(???,))

这是将要订阅的实例方法:

def translate(self, data):
        while self.run == True:
            signals = data['signals']
            translated_data = self.signal_separator.separate_signals(signals)
            data_to_publish = {'data' : translated_data, 'captured_time' : data['captured_time']}
            print(data_to_publish)
            pub.sendMessage(self.topic_name_to_message, data=data_to_publish)

通过订阅主题来提供参数“数据” ...

我不太确定我要去哪里。我认为这可能仅仅是我将每一行代码放置在哪里的问题。感谢所有提前答复的人。

0 个答案:

没有答案