code: public function lock()
      {
  
          // query whether or not, the PID has already been set
          if ($this->pid === $this->getSerial()) {
              return;
          }
  
          // if not, initialize the PID
          $this->pid = $this->getSerial();
  
          // open the PID file
          $this->fh = fopen($filename = $this->getPidFilename(), 'a+');
  
          // try to lock the PID file exclusive
          if (!flock($this->fh, LOCK_EX|LOCK_NB)) {
              throw new ImportAlreadyRunningException(sprintf('PID file %s is already in use', $filename));
          }
  
          // append the PID to the PID file
          if (fwrite($this->fh, $this->pid . PHP_EOL) === false) {
              throw new \Exception(sprintf('Can\'t write PID %s to PID file %s', $this->pid, $filename));
          }
      }
docs: Persist the UUID of the actual import process to the PID file.
  
  @return void
  @throws \Exception Is thrown, if the PID can not be locked or the PID can not be added
  @throws \TechDivision\Import\Exceptions\ImportAlreadyRunningException Is thrown, if a import process is already running