'Generator yielding tasks ordered by time.
Yields:
Tuples of ``(uuid, Task)``.'

def tasks_by_time(self, limit=None, reverse=True):

    _heap = self._taskheap
    if reverse:
        _heap = reversed(_heap)
    seen = set()
    for evtup in islice(_heap, 0, limit):
        task = evtup[3]()
        if (task is not None):
            uuid = task.uuid
            if (uuid not in seen):
                (yield (uuid, task))
                seen.add(uuid)
