multiprocessing多进程并行计算
多进程的multiprocessing
模块,用起来真的是挺顺手的,尤其是你在搞 CPU 密集型任务的时候。相比threading
模块,它不受 GIL 的限制,能更好地压榨多核 CPU 的性能。写法也不复杂,基本上把Thread
替换成Process
就行。
像那种跑模拟计算、数据一类的任务,用多进程确实香。响应快,执行效率也高不少。最关键是,Windows 和 Linux 都能跑,这点真的挺实用的。
你要是之前用惯了多线程,转用multiprocessing
也不用担心,接口设计蛮直观的。比如这样:
from multiprocessing import Process
def task():
print("Hello from a new process")
p = Process(target=task)
p.start()
p.join()
顺便说一句,像 多进程执行测试用例 和 单线程时代 这类文章也挺有意思的,推荐你一起看看,对理解这个模块更有。
如果你正在做多核优化,或者那些不适合用线程的任务,那multiprocessing
还挺值得试试的。别忘了好进程通信和资源释放,嗯,细节到位,效率才高。
8.1MB
文件大小:
评论区