'Get a task from queue when bucket available'

def get(self):

    if (self.bucket.get() < 1):
        return None
    now = time.time()
    self.mutex.acquire()
    try:
        task = self.priority_queue.get_nowait()
        self.bucket.desc()
    except Queue.Empty:
        self.mutex.release()
        return None
    task.exetime = (now + self.processing_timeout)
    self.processing.put(task)
    self.mutex.release()
    return task.taskid
