def METHOD_NAME(self):
    """
    Run the main poller process and exits after first task is processed.
    """
    logger.info("runnning %s once on domain %s", self.name, self.domain.name)
    self.bind_signal_handlers()
    self.is_alive = True
    self.set_process_name()
    while self.is_alive:
        try:
            response = self.poll_with_retry()
        except simpleflow.swf.mapper.exceptions.PollTimeout:
            continue
        self.process(response)
        break