multiprocess模块
一. Process模块介绍
1. 直接使用Process模块创建进程
(1)主进程和子进程
(2)if __name__ == "__main__"语句
2. Process模块参数介绍
函数传参的两种方式
3. Process模块方法介绍
(1)join方法的使用
(2)for循环开启多个进程
4. Process模块属性介绍
5. 在windows中必须把Process()放到if __name__ == "__main__"语句下
二. Process类的使用
1. 继承的形式创建进程
2. 进程的内存空间是隔离的
3. Process对象的其他方法或属性
terminate, is_alive, 显示进程名和id
4. 子进程中不能有input
5. 僵尸进程和孤儿进程
三. 守护进程
multiprocess模块
仔细说来,multiprocess不是一个模块而是python中一个操作、管理进程的包。 之所以叫multi是取自multiple的多功能的意思,在这个包中几乎包含了和进程有关的所有子模块。由于提供的子模块非常多,为了方便大家归类记忆,我将这部分大致分为四个部分:创建进程部分,进程同步部分,进程池部分,进程之间数据共享。重点强调:进程没有任何共享状态,进程修改的数据,改动仅限于该进程内,但是通过一些特殊的方法,可以实现进程之间数据的共享。
一. Process模块介绍
1. 直接使用Process模块创建进程
Process模块是一个创建进程的模块,借助这个模块,就可以完成进程的创建.
Process([group [, target [, name [, args [, kwargs]]]]]),由该类实例化得到的对象,表示一个子进程中的任务(尚未启动) 强调: 1. 需要使用关键字的方式来指定参数 2. args指定的为传给target函数的位置参数,是一个元组形式,必须有逗号
举例说明:
举例说明
(1)主进程和子进程
上面说了,我们通过主进程创建的子进程是异步执行的,那么我们就验证一下,并且看一下子进程和主进程(也就是父进程)的ID号(讲一