code: def _run(self, *args, **kwargs):  # pylint: disable=method-hidden
          
          self.greenlet.name = f'RaidenService._run node:{pex(self.address)}'
          try:
              self.stop_event.wait()
          except gevent.GreenletExit:  # killed without exception
              self.stop_event.set()
              gevent.killall([self.alarm, self.transport])  # kill children
              raise  # re-raise to keep killed status
          except Exception:
              self.stop()
              raise
docs: Busy-wait on long-lived subtasks/greenlets, re-raise if any error occurs