code: def _pop_async_request(self, msg_id, msg_name):
          
          assert get_thread_ident() == self.ioloop_thread_id
          if msg_id is None:
              msg_id = self._msg_id_for_name(msg_name)
          if msg_id in self._async_queue:
              callback_tuple = self._async_queue[msg_id]
              del self._async_queue[msg_id]
              self._async_id_stack[callback_tuple[0].name].remove(msg_id)
              return callback_tuple
          else:
              return None, None, None, None, None
docs: Pop the set of callbacks for a request.
  
          Return tuple of Nones if callbacks already popped (or don't exist).