2022-12-06 | 关于多进程python的异步非阻塞实现

2022-12-05  本文已影响0人  汪大山

主函数是自己要实现功能,下面是演示如何将我们的输入文件分批输入进去,进行多进程的python功能

主要用了异步非阻塞的方法,读者也可以尝试用pool.map来进行对比,来看下由什么不同的地方

```python

if __name__ =='__main__':

lines = fo.readlines()

line_list = []

for linein lines:

line_list.append(line)

count =len(line_list)# 文件行数

    chunktimes =5  #切分次数

    n =int(count/chunktimes)#步长

    # 切分diff

    match_split = [line_list[i:i+n]for iin range(0,len(line_list),n)]# 每个文件的数据行数

    pool = multiprocessing.Pool(6)

# 将切分的写入多个txt中

    #for i in range(0,int(count/n+1)): # 计算写入文件数

    for filein [match_split[i]for iin range(0,int(count/n+1))]:

pool.apply_async(主函数,args=(file,))

print(f"master{os.getpid()}")

pool.close()

pool.join()

```

上一篇下一篇

猜你喜欢

热点阅读