Python subprocess模块使用
来源:互联网 发布:aocu2879vf接mac 编辑:程序博客网 时间:2024/05/17 01:50
前言
学习Android生成OTA包的python脚本的时候,发现脚本里是使用subprocess模块管理子进程的,很有意思,这里记录一下学习心得和大家分享一下。
subprocess
在c语言中,一个进程可以fork出一个子进程,并让这个子进程exec一个新的命令。在python中,我们通过标准库的subprocess包来fork一个子进程,并在子进程中运行一个新的程序。
subprocess包中有数个创建子进程的函数,这些函数分别以不同的方式创建子进程,所以我们可以根据需要来从中选取一个使用。另外subprocess还提供了一些管理标准流(standard stream)和管道(pipe)的工具,从而在进程间使用文本通信。
使用subprocess包中的函数创建子进程的时候,需要注意:
- 在创建子进程之后,父进程是否暂停,并等待子进程运行。
- 函数返回什么
- 当return code不为0时,父进程如何处理。
subprocess.call()
函数原型:
subprocess.call(args, *, stdin=None, stdout=None, stderr=None, shell=False, timeout=None)
函数解释:
父进程等待子进程完成,返回执行是否成功。
subprocess.Popen
函数原型:
subprocess.Popen(args, bufsize=-1, executable=None, stdin=None, stdout=None, stderr=None, preexec_fn=None, close_fds=True, shell=False, cwd=None, env=None, universal_newlines=False, startupinfo=None, creationflags=0, restore_signals=True, start_new_session=False, pass_fds=())
Popen对象创建后,主程序不会自动等待子进程完成。我们必须调用对象的wait()方法,父进程才会等待 (也就是阻塞block)。
0 0
- Python subprocess模块使用
- python的subprocess模块使用
- Python中subprocess模块的使用
- Python中subprocess模块的使用
- Python中subprocess模块的使用
- Python之subprocess模块的使用
- Python模块subprocess小记
- Python模块subprocess小记
- python得subprocess模块
- Python模块subprocess小记
- python模块subprocess学习
- python模块subprocess学习
- python模块subprocess学习
- Python的subprocess模块
- Python模块subprocess小记
- python subprocess 模块使用方法
- python之subprocess模块
- python:subprocess模块
- JS的关键字和保留字
- android开发之service详解
- LeetCode 7 - Reverse Integer
- oracle 数据库创建表空间和用户
- 操作系统之进程(一)
- Python subprocess模块使用
- JS设置、获取和取消Cookie
- 详解JVM工作原理和特点
- 网上最新的devstack安装教程【一键部署openstack测试环境】
- Java并发编程的艺术——互动出版网
- 关于cocos2dx里面的onKeyDown返回按钮的问题
- 剑指off-求二叉树高
- git reset本地常见操作
- Java进程堆外内存(off heap)大小