Rumah  >  Artikel  >  pembangunan bahagian belakang  >  python中进程池的简单实现代码

python中进程池的简单实现代码

不言
不言ke hadapan
2018-10-08 15:26:482759semak imbas

本篇文章给大家带来的内容是关于python中进程池的简单实现代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

回到python,用一下python的进程池。

记得之前面试的时候,面试官问:你知道进程池的默认参数吗? 我没有回答上来,后来才知道,是有默认参数的。下面就看看它的默认参数

1. 不加参数

from multiprocessing.pool import Pool
from time import sleep
def fun(a):
    sleep(5)
    print(a)

if __name__ == '__main__':
    p = Pool()      # 这里不加参数,但是进程池的默认大小,等于电脑CPU的核数
                    # 也是创建子进程的个数,也是每次打印的数字的个数
    for i in range(10):
        p.apply_async(fun, args= (i, ))
    p.close()
    p.join()        # 等待所有子进程结束,再往后执行
    print("end")

2. 加参数5

from multiprocessing.pool import Pool
from time import sleep
def fun(a):
    sleep(5)
    print(a)
if __name__ == '__main__':
    p = Pool(5)     # 最多执行5个进程,打印5个数
    for i in range(10):
        p.apply_async(fun, args= (i, ))
    p.close()
    p.join()        # 等待所有子进程结束,再往后执行
    print("end")

Atas ialah kandungan terperinci python中进程池的简单实现代码. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:cnblogs.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam