def time(self, intervals=1, *args, _show_progress=True, _print=True,
             _collect_garbage=False, **kwargs):
        """ Measures the execution time of :prop:_callables for @intervals

            @intervals: #int number of intervals to measure the execution time
                of the function for
            @*args: arguments to pass to the callable being timed
            @**kwargs: arguments to pass to the callable being timed
            @_show_progress: #bool whether or not to print a progress bar
            @_print: #bool whether or not to print the results of the timing
            @_collect_garbage: #bool whether or not to garbage collect
                while timing
            @_quiet: #bool whether or not to disable the print() function's
                ability to output to terminal during the timing

            -> #tuple of :class:Timer :prop:results of timing
        """
        self.reset()
        self.num_intervals = intervals
        for func in self.progress(self._callables):
            try:
                #: Don't ruin all timings if just one doesn't work
                t = Timer(
                    func, _precision=self.precision,
                    _parent_progressbar=self.progress)
                t.time(
                    intervals, *args, _print=False,
                    _show_progress=_show_progress,
                    _collect_garbage=_collect_garbage,
                    **kwargs)
            except Exception as e:
                print(RuntimeWarning(
                    "{} with {}".format(colorize(
                        "{} failed".format(Look.pretty_objname(
                            func, color="yellow")), "yellow"), repr(e))))
            self._callable_results.append(t)
            self.progress.update()
        self.info(_print=_print)
        return self.results