summaryrefslogtreecommitdiff
path: root/psutil/_psaix.py
diff options
context:
space:
mode:
authorGiampaolo Rodola <g.rodola@gmail.com>2018-12-13 15:54:37 +0100
committerGiampaolo Rodola <g.rodola@gmail.com>2018-12-13 15:54:37 +0100
commit2cdf81db322822ba8fb23ed67523aacb6539da95 (patch)
treeee946d6f3200eafd2dafdee78e68c899426ebf8e /psutil/_psaix.py
parent8351fa4ff642d997cd478a7d216b661e62a5f696 (diff)
downloadpsutil-2cdf81db322822ba8fb23ed67523aacb6539da95.tar.gz
#1373: different approach to oneshot() cache (pass Process instances around - which is faster)
Diffstat (limited to 'psutil/_psaix.py')
-rw-r--r--psutil/_psaix.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/psutil/_psaix.py b/psutil/_psaix.py
index 7ba212db..9975545a 100644
--- a/psutil/_psaix.py
+++ b/psutil/_psaix.py
@@ -354,7 +354,7 @@ def wrap_exceptions(fun):
class Process(object):
"""Wrapper class around underlying C implementation."""
- __slots__ = ["pid", "_name", "_ppid", "_procfs_path"]
+ __slots__ = ["pid", "_name", "_ppid", "_procfs_path", "_cache"]
def __init__(self, pid):
self.pid = pid
@@ -363,14 +363,14 @@ class Process(object):
self._procfs_path = get_procfs_path()
def oneshot_enter(self):
- self._proc_name_and_args.cache_activate()
- self._proc_basic_info.cache_activate()
- self._proc_cred.cache_activate()
+ self._proc_name_and_args.cache_activate(self)
+ self._proc_basic_info.cache_activate(self)
+ self._proc_cred.cache_activate(self)
def oneshot_exit(self):
- self._proc_name_and_args.cache_deactivate()
- self._proc_basic_info.cache_deactivate()
- self._proc_cred.cache_deactivate()
+ self._proc_name_and_args.cache_deactivate(self)
+ self._proc_basic_info.cache_deactivate(self)
+ self._proc_cred.cache_deactivate(self)
@memoize_when_activated
def _proc_name_and_args(self):