LSSTApplications  19.0.0,19.0.0+1,19.0.0+10,19.0.0+13,19.0.0+3,19.0.0+5,19.0.0+9,tickets.DM-22703-ga158cbef15,w.2019.51
LSSTDataManagementBasePackage
Public Member Functions | List of all members
lsst.dax.ppdb.ppdb.Timer Class Reference
Inheritance diagram for lsst.dax.ppdb.ppdb.Timer:

Public Member Functions

def __init__ (self, name, do_logging=True, log_before_cursor_execute=False)
 
def __enter__ (self)
 
def __exit__ (self, exc_type, exc_val, exc_tb)
 

Detailed Description

Timer class defining context manager which tracks execution timing.

Typical use:

    with Timer("timer_name"):
        do_something

On exit from block it will print elapsed time.

See also :py:mod:`timer` module.

Definition at line 49 of file ppdb.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.dax.ppdb.ppdb.Timer.__init__ (   self,
  name,
  do_logging = True,
  log_before_cursor_execute = False 
)

Definition at line 61 of file ppdb.py.

61  def __init__(self, name, do_logging=True, log_before_cursor_execute=False):
62  self._log_before_cursor_execute = log_before_cursor_execute
63  self._do_logging = do_logging
64  self._timer1 = timer.Timer(name)
65  self._timer2 = timer.Timer(name + " (before/after cursor)")
66 
def __init__(self, minimum, dataRange, Q)

Member Function Documentation

◆ __enter__()

def lsst.dax.ppdb.ppdb.Timer.__enter__ (   self)
Enter context, start timer

Definition at line 67 of file ppdb.py.

67  def __enter__(self):
68  """
69  Enter context, start timer
70  """
71 # event.listen(engine.Engine, "before_cursor_execute", self._start_timer)
72 # event.listen(engine.Engine, "after_cursor_execute", self._stop_timer)
73  self._timer1.start()
74  return self
75 

◆ __exit__()

def lsst.dax.ppdb.ppdb.Timer.__exit__ (   self,
  exc_type,
  exc_val,
  exc_tb 
)
Exit context, stop and dump timer

Definition at line 76 of file ppdb.py.

76  def __exit__(self, exc_type, exc_val, exc_tb):
77  """
78  Exit context, stop and dump timer
79  """
80  if exc_type is None:
81  self._timer1.stop()
82  if self._do_logging:
83  self._timer1.dump()
84 # event.remove(engine.Engine, "before_cursor_execute", self._start_timer)
85 # event.remove(engine.Engine, "after_cursor_execute", self._stop_timer)
86  return False
87 

The documentation for this class was generated from the following file: