<分区>
我会尽量让我想做的事情尽可能简单。
我有两个类 ClassA
和 ClassB
ClassA
有一个实例方法,其中包含一个“无限”运行并收集数据的 while 循环。 ClassA
也传递了一个 ClassB
的实例。在 ClassA
收集此数据的同时,它还会检查传入的数据以查看是否已接收到特定信号。如果已收到信号,则调用 ClassB
中的实例方法。
考虑以下主程序驱动程序:
from class_a import ClassA
from class_b import ClassB
database_connection = MongoDB #purely example
class_b = ClassB(database_connection)
class_a = ClassA(class_b)
然后是类:
Class class_a:
def __init__(self, class_b):
self.class_b
def collect_data(self):
while True:
data = receiver()
if (signal in data):
self.class_b.send_data_to_database(data)
Class class_b:
def __init__(self, database):
self.database = database
def convert_data(self, data):
return data + 1
def send_data_to_database(data):
converted_data = convert_data(data)
self.database.send(converted_data)
现在是我的问题。我是否应该为 B 类中的“send_data_to_database()”实例方法创建一个线程?我的想法是,可能产生一个线程只是为了处理将数据发送到数据库,这比实例方法没有被线程化要快。我的想法在这里错了吗?我对线程的了解是有限的。最终,我只是想找到最快的方法,在 A 类识别出数据中有信号后将数据发送到数据库。感谢所有提前回复的人。