diff --git a/lib/util.py b/lib/util.py index c51b4b32a..67750a4fe 100644 --- a/lib/util.py +++ b/lib/util.py @@ -77,6 +77,20 @@ def print_json(obj): sys.stdout.write(s + "\n") sys.stdout.flush() + +# decorator that prints execution time +def profiler(func): + def do_profile(func, args): + n = func.func_name + t0 = time.time() + o = apply(func, args) + t = time.time() - t0 + print_error("[profiler]", n, "%.4f"%t) + return o + return lambda *args: do_profile(func, args) + + + def user_dir(): if "HOME" in os.environ: return os.path.join(os.environ["HOME"], ".electrum")