public <T>T time(Callable<T> event) throws Exception {
  final long startTime=clock.getTick();
  try {
    return event.call();
  }
  finally {
    update(clock.getTick() - startTime);
  }
}

public < T > T time ( Callable < T > event ) throws Exception { final long startTime = clock . getTick ( ) ; try { return event . call ( ) ; } finally { update ( clock . getTick ( ) - startTime ) ; } }
times and records the duration of event .
