multiprocessing
模块创建进程,标准库
1.需要将事件封装为函数
2.使用multiprocessing提供的类创建新进程
3.新的进程和对应的函数相关联,进程启动会自动执行函数,完成事件
4.进程回收
创建子进程类
multiprocessing.Process()
功能:创建子进程
参数:name:给创建的进程起一个名字 默认process-1
target:目标函数
args:元组,要给函数传递的参数 位置
kwargs:字典,要给函数传递的参数 键值
进程对象属性函数
p.start()
功能:启动子进程 此时进程真正创建
p.join([timeout])
功能:阻塞等待回收相应的子进程
参数:默认为阻塞,timeout为超时时间
p的其他属性
p.name 进程名称
p.pid 创建的进程的pid号
p.is_alive() Ture:进程处于活跃状态,False:进程处于终止状态
p.daemon 默认值为False表示主进程结束后不影响子进程的执行
如果设置为True则主进程执行完毕所有的子进程一同
退出
*设置必须在start()前
*一般使用daemon=True时,不用加join
*该属性并不是linux/unix系统中所说得守护进程设置
守护进程:生命周期长,随系统创建,随系统销毁
不受前端控制,后台运行
操作系统进程,或者是自动化运行进程居多
获取文件的大小
size=os.path.getsize(‘file’)