def ready(worker)
      if @work_queue.empty?
        @workers.insert(0, worker) unless @workers.include?(worker)
      else
        job = @work_queue.pop()
        @add_thread.wakeup() unless @add_thread.nil?
        ask_worker(worker, job)
      end
    end
def ready(worker)
      if @work_queue.empty?
        @workers.insert(0, worker) unless @workers.include?(worker)
      else
        job = @work_queue.pop()
        @add_thread.wakeup() unless @add_thread.nil?
        ask_worker(worker, job)
      end
    end
Identifies a worker as available to process jobs when they become
 available. This method is executed asynchronously.
 @param [Actor] worker Actor that responds to the method to be called