0
我还在学习Python。对我来说,这个代码是不是显示究竟如何“池映射”完全明显适用于https://docs.python.org:Python多处理pool.map说明
from multiprocessing import Pool
def f(x):
return x*x
if __name__ == '__main__':
numb_list = [1, 22, 333]
with Pool(5) as p:
print(p.map(f, numb_list))
所以......其堵塞列表[1,22,333]的各项指标分别为独立的所有运行在不同核心上的相同功能的进程? 如果是这样,我如何确定某个迭代的细节?如果 实施例I编辑的功能,因为我想知道某一元件的长度在列表[1,22,333]
def f(x):
if len(x) >= 3:
print("Big input")
return x*x
是否池一次插入整个列表到每个进程运行函数或名单的一部分?我可以通过这种方式检查元素输入的长度吗? 有没有一种方法可以使用for循环而不是map来区分当前正在输入哪个迭代或元素?
你是对的,它将每个元素分别传递到不同的进程中。 –
好的。所以我猜我可以在函数中检查x的长度,它应该是当前进程列表中的单个元素?没有很多人擅长编码并行程序? –
是的,那应该是对的。 –