Python 如何优化简单代码的多进程速度

查看 28|回复 0
作者:JustBecause   
写了一个程序,使用 PySide6 带有 GUI ,用来处理字幕的文本内容
因为要用到 CPU 处理,多线程和异步效果不佳,所以想做成多进程的形式处理,用的进程池来操作
pool = multiprocessing.Pool()
results = pool.map(analysisSubtitles, subtitles_list)
pool.close()
pool.join()
analysisSubtitles 是识别每个字幕每行内容并做替换。每个字幕文件处理时间 30-300ms 左右,但使用了多进程以后,无论拖入一个还是十个文件,都要至少 1.5s 起步才能处理完成
这是什么原因导致的,有没有办法优化?
百度谷歌必应和 GPT 都问过了,实在找不到问题原因
===
macOS 上我加了 multiprocessing.set_start_method("fork") 解决,基本在 0.5s 内就可以完成
但我也有在 windows 使用的需求,请问 windows 下如何优化才能减少执行时间?
感谢各位
您需要登录后才可以回帖 登录 | 立即注册

返回顶部