python3 用multiprocessing模块传递多个参数

复制代码
from datetime import datetime
from time import sleep
import numpy as np
import multiprocessing
# from multiprocessing.dummy import Pool as ThreadPool


def func(x, y, z):
    sleep(3)
    return x+y, z


if __name__ == '__main__':
    pool = multiprocessing.Pool(processes=6)
    x = np.zeros((6, 1), dtype=int)
    y = np.zeros((6, 1), dtype=int)
    z = np.zeros((6, 1), dtype=int)
    result = []

    for i in range(6):
        x[i,0] = i
        y[i,0] = i
        z[i,0] = i

    xx = np.squeeze(x)
    yy = np.squeeze(y)
    zz = np.squeeze(z)
    c = list(zip(xx, yy, zz))
    print(c)
    cc = np.array(c)
    # print(cc)
    # d = [(0, 0, 0), (1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5)]
    print(datetime.now())
    result = pool.starmap(func, c)
    print(result)
    print(datetime.now())

# from functools import partial
#
# def sum(a, b, c):
# return a + b + c
#
# a = 'abc'
# b = "ABC"
# c = "123"
# pa = partial(sum, a)
# re = pa(b, c)
#
# print(re)
复制代码

 

posted on   Karlkiller  阅读(823)  评论(0编辑  收藏  举报

编辑推荐:
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
阅读排行:
· 开发的设计和重构,为开发效率服务
· 从零开始开发一个 MCP Server!
· Ai满嘴顺口溜,想考研?浪费我几个小时
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
历史上的今天:
2018-07-22 2018年7月21日笔记
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示