Mercurial > hg
changeset 27795:3e0d27d298b7
with: use context manager for file I/O in memusage
author | Bryan O'Sullivan <bryano@fb.com> |
---|---|
date | Fri, 15 Jan 2016 13:14:45 -0800 |
parents | 9a1f3f9bac5d |
children | f7f3958d39c0 |
files | contrib/memory.py |
diffstat | 1 files changed, 1 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/contrib/memory.py Fri Jan 15 13:14:49 2016 -0800 +++ b/contrib/memory.py Fri Jan 15 13:14:45 2016 -0800 @@ -15,20 +15,15 @@ def memusage(ui): """Report memory usage of the current process.""" - status = None result = {'peak': 0, 'rss': 0} - try: + with open('/proc/self/status', 'r') as status: # This will only work on systems with a /proc file system # (like Linux). - status = open('/proc/self/status', 'r') for line in status: parts = line.split() key = parts[0][2:-1].lower() if key in result: result[key] = int(parts[1]) - finally: - if status is not None: - status.close() ui.write_err(", ".join(["%s: %.1f MiB" % (key, value / 1024.0) for key, value in result.iteritems()]) + "\n")