Python并发编程

multiproccessing

import multiprocessing as mp

count = 0


def job(id):
    global count
    count += 1
    print(f'job {id}, {count}')


pool = mp.Pool(4)
for i in range(100):
    pool.apply_async(job, (i,))
pool.close()
pool.join()

结果:

job 0, 1
job 1, 1
job 2, 1
job 3, 1
job 4, 2
job 5, 2
job 6, 3
job 7, 2
job 8, 2
job 9, 4
import multiprocessing as mp

count = mp.Value('i',0)

def job(id):
    global count
    count.value += 1
    print(f'job {id}, {count.value}')


pool = mp.Pool(4)
for i in range(100):
    pool.apply_async(job, (i,))
pool.close()
pool.join()

结果

job 0, 1
job 1, 2
job 4, 4
job 2, 3
job 5, 6
job 6, 7
job 3, 6
job 7, 8
job 8, 9
job 9, 10

https://blog.csdn.net/houyanhua1/article/details/78244288

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值