0
我已经做了我正在写的一个更大的一段代码的以下示例。我想要多个进程管理100个左右的线程,这些线程也是类。多进程类没有在实际进程中存储数据
我有两个问题,一个是“添加”方法似乎实际上并没有添加到新的过程。另一个是即使创建了2,3或4个进程,线程仍然在第一个主进程下启动。
下面的代码不显示线程类,但也许如果你可以帮助解释为什么进程没有正确添加我可以找出线程部分。
from time import sleep
import multiprocessing
class manager(multiprocessing.Process):
def __init__(self):
multiprocessing.Process.__init__(self)
self.symbols_list = []
def run(self):
while True:
print "Process list: " + str(self.symbols_list)
sleep(5)
def add(self, symbol):
print "adding..." + str(symbol)
self.symbols_list.append(symbol)
print "after adding: " + str(self.symbols_list)
if __name__ == "__main__":
m = manager()
m.start()
while True:
m.add("xyz")
raw_input()
输出如下:
adding...xyz
after adding: ['xyz']
Process list: []
adding...xyz
after adding: ['xyz', 'xyz']
adding...xyz
after adding: ['xyz', 'xyz', 'xyz']
Process list: []