多进程:
from multiprocessing import Pool #导包
#定义处理数据的函数
def main(data):
pass
datalist = [] #把要处理的数据保存到列表中
with Pool(24) as pool: #使用with语句打开24个进程
pool.map(main,datalist) #把处理函数和数据通过map函数进行提交,也可以通过其他函数进行提交,根据自己的情况定
#当要传递多个固定参数
from functools import partial
def main(data,par) #多增加一个变量去接收产生,多个固定参数可以用索引进行调用
pass,
datalist = []
par = partial(main,par=(......)) #把要传递多个的固定参数写入元组,一个就不需要
with Pool(36) as pool:
pool.map(par,datalist)
多线程:
from concurrent.futures import ThreadPoolExecutor #导包
#定义处理函数
def main(data):
pass
datalist = []
with ThreadPoolExecutor(24) as Executor:
Executor.map(main,datalist) #通过map函数提交