我有以下使用多处理器包的代码
print ('cpu count=',multiprocessing.cpu_count())
event = multiprocessing.Event() # Assign an event object
lock = multiprocessing.Lock()
with Pool(processes=2) as pool:
for serverNum in range (2):
pool.apply_async(funcCall, (event, lock, serverNum))
当代码前面带有
import multiprocessing
我收到错误“池”未定义
如果我改为包含
from multiprocessing import Event, Lock, Pool
我收到错误
print ('cpu count=',multiprocessing.cpu_count())
^^^^^^^^^^^^^^^
NameError:未定义名称“multiprocessing”。您是否忘记导入“多重处理”?
何时包含
from multiprocessing import Event, Lock, Pool
import multiprocessing
它带来了我需要的一切。但包含该模块以及包含模块中各个函数的名称似乎是错误的。
您不应该只使用
multiprocessing.Pool
吗,就像您对 multiprocessing.Event()
和 multiprocessing.Lock()
所做的那样,这样就无需单独导入每个