code: def _run(self):
          
          self._update({
              'started': 1,
              'finished': 0,
              'pid': os.getpid()
          })
          self.started_sender.send(True)
  
          if self.timeout_secs > 0:
              self._install_alarm()
  
          dct = self._run_module()
          if not self._timed_out:
              # After SIGALRM fires, there is a window between broker responding
              # to shutdown() by killing the process, and work continuing on the
              # main thread. If main thread was asleep in at least
              # basic.py/select.select(), an EINTR will be raised. We want to
              # discard that exception.
              try:
                  self._parse_result(dct)
              except Exception:
                  self._update({
                      "failed": 1,
                      "msg": traceback.format_exc(),
                      "data": dct['stdout'],  # temporary notice only
                      "stderr": dct['stderr']
                  })
docs: 1. Immediately updates the status file to mark the job as started.
          2. Installs a timer/signal handler to implement the time limit.
          3. Runs as with run_module(), writing the result to the status file.
  
          :param dict kwargs:
              Runner keyword arguments.
          :param str job_id:
              String job ID.
          :param int timeout_secs:
              If >0, limit the task's maximum run time.