关于python subprocess的popen
2016-03-09 13:17
465 查看
一段代码,备忘
import subprocess
import os
import threading
def on_exit():
print("process is dead")
def monitor(process1,onexit):
print("process id %s waiting"% (process1.pid))
process1.wait()
onexit()
command=['mplayer']+["/home/aphero/1.mp4"]
process = subprocess.Popen(command,stdout=subprocess.PIPE, preexec_fn=os.setsid)
process_monitor = threading.Thread(target=monitor, args=(process, on_exit))
process_monitor.start()
print("test poll")
ret=process.poll()
while ret is None:
returncode=process.stdout.read(512)#实时读取返回数据
print(returncode)
ret=process.poll()
print("end")
import subprocess
import os
import threading
def on_exit():
print("process is dead")
def monitor(process1,onexit):
print("process id %s waiting"% (process1.pid))
process1.wait()
onexit()
command=['mplayer']+["/home/aphero/1.mp4"]
process = subprocess.Popen(command,stdout=subprocess.PIPE, preexec_fn=os.setsid)
process_monitor = threading.Thread(target=monitor, args=(process, on_exit))
process_monitor.start()
print("test poll")
ret=process.poll()
while ret is None:
returncode=process.stdout.read(512)#实时读取返回数据
print(returncode)
ret=process.poll()
print("end")
相关文章推荐
- python—networkx:各个布局的源代码
- python setup.py 上传之后下载
- python (模块、包)搜索与导入的问题
- Python——装饰器基础
- 【零基础入门学习Python笔记003】插曲之变量和字符串|课习题答案
- 导入自定义模块方式及遇到的一个问题
- 【python】编程语言入门经典100例--29
- ubuntu14下python环境的配置
- Python的下载及安装
- 使用easy_install安装python包的方法 与python开源库
- Python求算数平方根和约数的方法汇总
- 【python】编程语言入门经典100例--28
- python的moudles文件中__all__作用
- IP地址正则表达式匹配方法
- python的常用概念
- Python——debug(二)
- python 调用 lvs 脚本 [备忘]
- python脚本工具-2 去除扩展名后提取目录下所有文件名并保存
- 用PyInstaller把Python代码打包成单个独立的exe可执行文件
- Ubuntu14.0 64bit 下Scrapy爬虫框架的搭建