首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >psutil -挂起过程

psutil -挂起过程
EN

Stack Overflow用户
提问于 2012-02-10 18:07:28
回答 2查看 2.4K关注 0票数 0

我正在为Linux编写一个Python脚本,该脚本应在满足给定条件时挂起进程,稍后再恢复进程。为此,我使用了psutil (http://code.google.com/p/psutil)。我遇到的问题很奇怪。当我使用python命令行时,一切工作正常-进程被挂起,后来又恢复了。但是,当我在脚本文件中使用相同的函数,然后尝试运行它时,它会抛出异常:

代码语言:javascript
复制
AttributeError: 'Process' object has no attribute 'suspend'

代码片段:

代码语言:javascript
复制
p = psutil.Process(19931)
p.suspend()
print 'suspended'
time.sleep(10)
p.resume()
print 'resumed'

当然,19931是我在后台启动的进程的PID类型,并希望将其挂起。

有没有人有什么想法或提示?Psutil是从Google code安装的最新版本。

EN

回答 2

Stack Overflow用户

发布于 2012-02-12 01:12:09

当Python在交互式shell和执行脚本下的行为不同时,我怀疑的第一件事就是运行不同版本的Python。当您在脚本文件中指向解释器时,这很容易发生,例如:

代码语言:javascript
复制
#!/usr/bin/python

根据psutil网站的说法,这是一个很小的机会,因为它应该可以很好地与从2.4到3.3的Python版本一起工作。而且,您的代码片段在我的机器上运行良好(内核2.6.32,Python 2.6.6)。

票数 0
EN

Stack Overflow用户

发布于 2019-06-23 04:34:42

我知道这是一个老条目,但对于那些最近遇到这个问题的人来说,

这段代码对我来说很好(Python 3.7.3):

代码语言:javascript
复制
psutil.Process(pid=19931).suspend()

同样地,

代码语言:javascript
复制
psutil.Process(pid=19931).resume()

但您必须确保引用的进程仍处于活动状态。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9226032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档