专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Perl/Python

怎么关闭另外一个python process

发布时间:2011-06-29 20:09:44 文章来源:www.iduyao.cn 采编人员:星星草
如何关闭另外一个python process
我有一个脚本是这样的,起一个进程在后台抓log, log会一直的刷,没有尽头。然后在特定的时间关闭它,或者说,我想什么时候不抓了就停了它。 停的方式呢,就是运行另一个脚本,这个怎么实现呢?抓log的代码如下:

 
Python code

    file=open("logs.txt","w")
    log=subprocess.Popen(["catch.exe","-t"],shell=False,stdout=subprocess.PIPE)
    while log.poll() == None:
        line=log.stdout.readline()
        file.write(line)
    else:
        file.close()


谢谢大家了~~~~~

------解决方案--------------------
如果这样呢?

Python code

import os

file=open("logs.txt","w") log=subprocess.Popen(["catch.exe","-t"],shell=False,stdout=subprocess.PIPE) 
stop = False
while (log.poll() == None) and (not stop): 
    line=log.stdout.readline() 
    file.write(line) 
    stop = os.path.exists("stop.txt")
else: 
    file.close()

------解决方案--------------------
阻塞式的是这样的,有非阻塞的subprocess,看看:

http://www.python.org/dev/peps/pep-3145/

http://code.google.com/p/subprocdev/source/browse/subprocess.py?r=2c925e935cad0166d5da85e37c742d8e7f609de5&spec=svn2c925e935cad0166d5da85e37c742d8e7f609de5
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: