多任务之进程

本文深入解析了进程和线程的概念,阐述了两者的区别,包括资源管理方式的不同。介绍了Python中使用multiprocessing模块创建和管理进程的方法,以及如何通过参数传递实现进程间的通信。此外,还探讨了主进程与子进程的关系,以及守护进程的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、定义
一个运行的软件或者程序,进程是操作系统资源分配的基本单位,没有进程就没有线程
##线程和进程的区别
线程间资源共享,进程间资源独立

二、进程多任务
(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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值