最近在搞python多进程解析文件,遇到一个比较棘手的问题,程序设计采用python multiprocessing.Pool()进程池,服务器48核,程序进程池24,;程序在执行过程中,子进程越往后执行越慢,甚至有某个进程执行时间超长,代码及日志信息如下,跪求大神指点迷津。
import pathlib
import shutil
import multiprocessing
#目录遍历
def create_source_pool(source):
filelist=[]
splitFiles = source.rglob('*.txt')
for f in splitFiles:
filelist.append(f)
return filelist
#文件解析
def worker(filePath,targetPath):
dt=datetime.datetime.now()
myLogger.info(f'START PARSER:::子进程:{os.getpid()} : {multiprocessing.current_process().name},启动时间:{dt} cureent parse filePath >>> :{filePath}')
# myLogger.info(f'START PARSER:{multiprocessing.current_process()} cureent parse filePath >>> :{filePath}')
projectidInfoPath = targetPath / f'projectidInfo-{filePath.stem}.txt'
hidInfoPath = targetPath / f&#