From 342c8c21078cb74025b2f242b3649628a96ccb1d Mon Sep 17 00:00:00 2001 From: Fredrik Tolf Date: Mon, 7 Jan 2013 08:02:30 +0100 Subject: [PATCH 1/1] Added a simple utilities file. --- pdm/util.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 pdm/util.py diff --git a/pdm/util.py b/pdm/util.py new file mode 100644 index 0000000..53cc82a --- /dev/null +++ b/pdm/util.py @@ -0,0 +1,16 @@ +"""Python Daemon Management -- Miscellaneous utilities + +This module contains various functions that may be useful to call from +the PDM REPL. +""" + +import sys, traceback, threading + +def threads(): + "Returns a dict of currently known threads, mapped to their respective frames." + tt = dict((th.ident, th) for th in threading.enumerate()) + return dict((tt.get(key, key), val) for key, val in sys._current_frames().iteritems()) + +def traces(): + "Returns the value of threads() with each frame expanded to a backtrace." + return dict((th, traceback.extract_stack(frame)) for th, frame in threads().iteritems()) -- 2.11.0