Skip to content
Snippets Groups Projects
debug_utils.py 548 B
Newer Older
# coding=utf-8
import time

def timeit(method):
    '''
    Debug decorator to measure the execution time of some method or function
    '''
    def timed(*args, **kw):
        ts = time.time()
        result = method(*args, **kw)
        te = time.time()
        if 'log_time' in kw:
            name = kw.get('log_name', method.__name__.upper())
            kw['log_time'][name] = int((te - ts) * 1000)
        else:
            print '%r  %2.2f ms' % \
                  (method.__name__, (te - ts) * 1000)
        return result
    return timed