我的问题是如何在多个类之间共享变量或缓冲区,例如,从多个类写入单个缓冲区,因为已知某些类在线程环境示例中运行class my1(object): def __init__(self): self.buffer=[0]*5 self.size=0 def insert(self,data): self.data=data self.buffer[self.size]=self.data self.size+=1class my2(my1): def __init__(self): self.insert('data1')class my3(my1): def __init__(self): self.insert('data2')期望的结果将是同时包含要处理的data1和data2的缓冲区,而类my1中的缓冲区是在(init)节中定义的,并且不能共享任何建议吗?非常感谢
2 回答
互换的青春
TA贡献1797条经验 获得超6个赞
你这样做是错的。
只需创建一个class对象,my1并将其传递给classmy2和的对象即可my3。
# leave my1 as it is
class my2(): # no need to inherit from my1
def __init__(self, my1obj): # buffer is object of my1
my1obj.insert('data1')
class my3():
def __init__(self, my1obj):
my1obj.insert('data2')
mybuffer = my1()
my2obj = my2(mybuffer)
my3obj = my3(mybuffer)
添加回答
举报
0/150
提交
取消
