进程就是计算机中程序的一次运行活动(Process),是操作系统的结构基础。
当多个进程共同访问|修改一个全局变量的时候,变量在各进程中单独存在
自定义进程用来访问自己的方法
继承Process类
重写__init__方法添加自己的属性, 使用super()加载父类属性
super(当前类, self).__init__()重写run方法, 内容就写在此方法中
进程池, 可以指定最大进程数, 当有任务时, 就在进程池中开辟一个进程, 直到进程池满, 当在有任务时, 任务等待进程池中某任务完成在继续
# 进程池 form multiprocessing import Pool pool = Pool(Max) pool.apply() # 阻塞式 pool.apply_async() # 非阻塞式 pool.close() # 停止添加进程 pool.join() # 让主进程让步, 避免主进程死亡,导致子进程死亡 # 非阻塞式: 全部添加到队列中, 主进程立刻返回, 并没有等待其他进程完毕, 但是回调函数时等待任务完成之后才调用 # 阻塞式: 每运行一个添加一个, 上一个完成创建新的线程继续下一个, 线程依然会服用pool.apply_async(task, args=(i,), callback=callback_print)
函数 参数 回调函数 函数