python实现多任务的方式包括多线程和多进程,多线程一般可以理解为单个CPU核执行多个任务,而多进程是指多个CPU核执行多个任务,二者区别请转阅他贴;多进程可以使用multiprocessing和MPI来实现,本文主要叙述用二者实现简单的并行计算:
(1)multiprocessing一般在单机上容易使用,比如你的单机是2个CPU共12个核
可用如下程序
if __name__ == "__main__":
import multiprocessing as mp
num_cores = int(mp.cpu_count())
pool = mp.Pool(processes=num_cores)
print num_cores,pool
for i in range(num_cores):
pool.apply_async(function, (i, ))