• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 用python记录运行pid,并在需要时kill掉它们的实例

用python记录运行pid,并在需要时kill掉它们的实例

作者:jingxian 字体:[增加 减小] 来源:互联网

jingxian 通过本文主要向大家介绍了python pid,python pid算法,kill 9 pid,kill pid,kill 3 pid等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

我在跑爬虫程序的时候,由于爬虫程序的等待目标服务器返回数据的时间很长,而cpu占用很低,所以经常挂着代理一跑就跑好几百个。但是爬虫程序通常是写了死循环,或直到分配给该进程的任务都跑完才退出的。如果我们想中途结束掉这些任务,是没办法手工一个一个kill掉的。那么该如何结束这些进程呢?

我的方法就是在运行爬虫进程时,记录该进程的Pid,然后在需要手动结束时,再用语句kill掉它们。

for i in {1..100}
do
  nohup python NetEase_comms_proxy.py > hehe.dat 2>&1 & echo $! >> run.pid
  sleep 10
done
</div>

上述语句完成了将脚本在后台运行100便,并且将pid append到run.pid文件中。其中nohup 是 no hang up的缩写命令。do…done之间是被循环的语句。

接下来就是kill掉它们的语句了,我用的python

import os

if __name__ == '__main__':
  fin = open('run.pid', 'r')
  pids = []
  for line in fin:
    pids.append(line.strip())
  for pid in pids:
    cmd = 'kill ' + pid
    os.system(cmd)
</div>

这样就把记录下来的pid全部kill掉了。

但需要注意的一点时,如果在任务运行期间,有的进程由于完成任务或者出错而退出。其他的程序可能会share这些进程的Pid,这样如果在运行kill脚本的时候,可能附带就把这些进程也给Kill掉了,造成不必要的麻烦。

以上这篇用python记录运行pid,并在需要时kill掉它们的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

</div>

您可能想查找下面的文章:

  • 用python记录运行pid,并在需要时kill掉它们的实例
  • python 根据pid杀死相应进程的方法
  • 使用python 获取进程pid号的方法

相关文章

  • 浅析python中的分片与截断序列
  • Python中计算三角函数之cos()方法的使用简介
  • python查询sqlite数据表的方法
  • python代码制作configure文件示例
  • 基于Python的身份证号码自动生成程序
  • 深入理解Python对Json的解析
  • 详解Python之数据序列化(json、pickle、shelve)
  • c++生成dll使用python调用dll的方法
  • Python的subprocess模块总结
  • python中 ? : 三元表达式的使用介绍

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Linux下将Python的Django项目部署到Apache服务器
    • 详解Python的collections模块中的deque双端队列结构
    • Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
    • 使用python实现拉钩网上的FizzBuzzWhizz问题示例
    • python实现bitmap数据结构详解
    • Python构造自定义方法来美化字典结构输出的示例
    • Python生成验证码实例
    • Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法
    • python如何实现远程控制电脑(结合微信)
    • python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有