并发和并行
1.并发是一段时间内交替执行任务,这就是单任务
2.并行是同一时间执行多个任务,这就是多任务
3.多任务的好处是充分利用cpu资源,提高系统执行效率
进程的使用
1.格式
Process(target:执行的任务名,args:(列表参数))
2.常用的方法:
start() 启动
join() 等待子进程执行结束
terminate() 守护主进程
进程执行流程
1.导包
import multiprocessing
2.创建子进程并指定执行的任务
pro= multiprocessing.Process (target=任务名)
3.启动进程执行任务
pro.start()
获取进程编号
获取进程编号的目的是验证主进程和子进程的关系,可以得知子进程是由哪个主进程创建出来的.
1.os.getpid() 获取当前进程编号
2.os.getppid() 获取当前进程的父进程的编号
获取进程编号可以查看父子进程关系
参数
1.args :元组传参数必须要和参数顺序保持一致
2.kwargs :字典传参数要使key和参数名一致
注意:
1.进程是系统分配基础单位所以不能共享全局变量
2.主进程会等待子进程结束在结束
3.守护主进程,是销毁子进程,格式:子进程.terminate()并exit()退出
或者子进程.daemon=True