Discuss / Python / pool.apply_async()方法

pool.apply_async()方法

Topic source

无所谓ovo

#1 Created at ... [Delete] [Delete and Lock User]

pool.apply_async(函数名,参数(*args)[,返回callback=A.append])

进程池pool中的apply方法与apply_async方法比较:

① apply方法是阻塞的,意思是等待当前子进程执行完毕后,再执行下一个进程;②apply_async是异步非阻塞的,意思是不用等待当前进程执行完毕,随时根据系统调度来进行进程切换;③applay达不到多进程效果,而apply_async属于异步,主进程和子进程同时跑,谁跑的快,谁先来,可达到多进程效果

它是异步阻塞的吧,虽然可以多个进程同时进行,但仍然会占用进程池的进程资源,所以Pool(4)只能同时执行4个进程,而第五个进程需要等其中一个完成才可以进行


  • 1

Reply