'Execute the task\'s callback.
If an event queue was supplied, place the callback in the queue;
otherwise, execute the callback immediately.'

def run(self):

    if (self.qpointer is not None):
        self.qpointer.put(('schedule', self.callback, self.args, self.kwargs, self.name))
    else:
        self.callback(*self.args, **self.kwargs)
    self.reset()
    return self.repeat
