python 进程,线程的使用方法
2015-11-06 19:43
609 查看
subprocess和multiprocessing
subprocess:
subprocess.Popen(["cat","test.txt"])
subprocess.Popen("cat test.txt")
这两个之中,后者将不会工作。因为shell的默认值是False,即不在shell中执行。如果是一个字符串的话,必须是程序的路径才可以,比如/bin/sh。
所以,cmd的命令一般用split切割掉空格,得到一个数组,作为Popen的参数,但是似乎和在cmd中直接敲入命令,还是会有不同的。有些命令在cmd中可以正常执行,到了Popen可能被解释成其他的含义,从而不能正确执行。比如"ls > test.txt",在Popen时,可能会认为">"是ls的参数。如果是shell命令,如 adb shell,在Process构造 时,要shell=True.
multiprocessing:
用来 管理subprocess产生的进程(把subprocess放在子进程中执行?)。
这个模块用起来比较难,非常建议把官网的Libraty reference 中 17 Concurent Execution多看几遍。
threading.Thread:
用来 管理subprocess产生的进程(把subprocess放在线程中执行?)。
subprocess:
subprocess.Popen(["cat","test.txt"])
subprocess.Popen("cat test.txt")
这两个之中,后者将不会工作。因为shell的默认值是False,即不在shell中执行。如果是一个字符串的话,必须是程序的路径才可以,比如/bin/sh。
所以,cmd的命令一般用split切割掉空格,得到一个数组,作为Popen的参数,但是似乎和在cmd中直接敲入命令,还是会有不同的。有些命令在cmd中可以正常执行,到了Popen可能被解释成其他的含义,从而不能正确执行。比如"ls > test.txt",在Popen时,可能会认为">"是ls的参数。如果是shell命令,如 adb shell,在Process构造 时,要shell=True.
multiprocessing:
用来 管理subprocess产生的进程(把subprocess放在子进程中执行?)。
这个模块用起来比较难,非常建议把官网的Libraty reference 中 17 Concurent Execution多看几遍。
threading.Thread:
用来 管理subprocess产生的进程(把subprocess放在线程中执行?)。
相关文章推荐
- [Python] Numpy学习笔记(一)
- python 对文件做类别标签
- [翻译] [RabbitMQ+Python入门经典] 兔子和兔子窝
- Python核心编程读笔 2
- 使用Python调用R(一、环境搭建)
- python 非方阵矩阵求解
- python简单爬虫技术
- OpenCV Python教程(1、图像的载入、显示和保存)
- OpenCV Python教程(1、图像的载入、显示和保存)
- Python3.0 PyCharm控制台 中文乱码
- 看到一篇文章刷CSDN博客访问量,目前没有环境实现,抽空可以去跑跑看或者改为其他方式实现
- python时间相关
- ImportError: No module named _tkinter, please install the python-tk package ubuntu运行tkinter错误
- 笨办法学 Python (Learn Python The Hard Way)
- 2015/11/6用Python写游戏,pygame入门(6):控制大量的对象
- view里的一些方法
- python-异常处理
- python-I/O-文件操作
- python-模块
- python-函数