docs: def request_pick_fruit(self, req):
          """Pick a random fruit."""
          r = random.choice(self.FRUIT + [None])
          if r is None:
              return ("fail", "No fruit.")
          delay = random.randrange(1,5)
          req.inform("Picking will take %d seconds" % delay)
  
          def pick_handler():
              self._fruit_result.set_value(r)
              req.reply("ok", r)
  
          handle_timer = threading.Timer(delay, pick_handler)
          handle_timer.start()
  
          raise AsyncReply