summaryrefslogtreecommitdiff
path: root/psutil/__init__.py
diff options
context:
space:
mode:
authorGiampaolo Rodola <g.rodola@gmail.com>2020-04-28 04:27:56 +0200
committerGiampaolo Rodola <g.rodola@gmail.com>2020-04-28 04:27:56 +0200
commit56db14e14797ac790094a7bd8865d63383fd93a7 (patch)
tree004a33a8cc6280ac3099b55c44b91ef9223d0d02 /psutil/__init__.py
parentefe1cdb3b7177a0e65531cf9b099d28df9bc8271 (diff)
downloadpsutil-56db14e14797ac790094a7bd8865d63383fd93a7.tar.gz
show status() in __repr__
Diffstat (limited to 'psutil/__init__.py')
-rw-r--r--psutil/__init__.py30
1 files changed, 16 insertions, 14 deletions
diff --git a/psutil/__init__.py b/psutil/__init__.py
index 650fcf0f..028ab049 100644
--- a/psutil/__init__.py
+++ b/psutil/__init__.py
@@ -397,20 +397,22 @@ class Process(object):
except AttributeError:
info = {} # Python 2.6
info["pid"] = self.pid
- try:
- info["name"] = self.name()
- if self._create_time:
- info['started'] = _pprint_secs(self._create_time)
- except ZombieProcess:
- info["status"] = "zombie"
- except NoSuchProcess:
- info["status"] = "terminated"
- except AccessDenied:
- pass
- return "%s.%s(%s)" % (
- self.__class__.__module__,
- self.__class__.__name__,
- ", ".join(["%s=%r" % (k, v) for k, v in info.items()]))
+ with self.oneshot():
+ try:
+ info["name"] = self.name()
+ info["status"] = self.status()
+ if self._create_time:
+ info['started'] = _pprint_secs(self._create_time)
+ except ZombieProcess:
+ info["status"] = "zombie"
+ except NoSuchProcess:
+ info["status"] = "terminated"
+ except AccessDenied:
+ pass
+ return "%s.%s(%s)" % (
+ self.__class__.__module__,
+ self.__class__.__name__,
+ ", ".join(["%s=%r" % (k, v) for k, v in info.items()]))
__repr__ = __str__