'Display the process of the parallel execution only a fraction
of time, controlled by self.verbose.'

def print_progress(self):

    if (not self.verbose):
        return
    elapsed_time = (time.time() - self._start_time)
    if (self._original_iterator is not None):
        if _verbosity_filter(self.n_dispatched_batches, self.verbose):
            return
        self._print('Done    %3i    tasks                        |    elapsed:    %s', (self.n_completed_tasks, short_format_time(elapsed_time)))
    else:
        index = self.n_completed_tasks
        total_tasks = self.n_dispatched_tasks
        if (not (index == 0)):
            cursor = (((total_tasks - index) + 1) - self._pre_dispatch_amount)
            frequency = ((total_tasks // self.verbose) + 1)
            is_last_item = ((index + 1) == total_tasks)
            if (is_last_item or (cursor % frequency)):
                return
        remaining_time = ((elapsed_time / index) * (self.n_dispatched_tasks - (index * 1.0)))
        self._print('Done    %3i    out    of    %3i    |    elapsed:    %s    remaining:    %s', (index, total_tasks, short_format_time(elapsed_time), short_format_time(remaining_time)))
