一、定义
一个运行的软件或者程序,进程是操作系统资源分配的基本单位,没有进程就没有线程
##线程和进程的区别
线程间资源共享,进程间资源独立
二、进程多任务
(1)过程
#导入线程模块
import multiprocessing
multiproessing.Process( target =,args=(,), kwargs={})
*
target:执行的目标任务名
*
args:以元组方式给执行任务传参
*
kwargs:以字典方式给执行任务传参
Process创建的实例对象的常用方法:
*
start():启动子进程实例(创建子进程)
*
join([timeout]):是否等待子进程执行结束,或等待多少秒
*
terminate():不管任务是否完成,立即终止子进程
Process创建的实例对象的常用属性:
*
name:当前进程的别名,默认为Process-N,N为从1开始递增的整数
*
pid:当前进程的pid(进程号)
*
multiprocessing.current_process() 查看当前进程
子进程是对主进程的复制,p.start()启动的是子进程,主进程中的process作为静态对象存在,不执行,不同的进程拥有独立的空间和资源
(2)特点
#主进程之间不共享全局变量
#主进程会等子进程结束,可以设置守护主进程
设置守护主进程:
daemon不能作为参数传入实例化
work_process.daemon = True