code: def communicate(self):
          
          self._communicate_first = True
          self._process.waitForFinished()
  
          enco = self._get_encoding()
          if self._partial_stdout is None:
              raw_stdout = self._process.readAllStandardOutput()
              stdout = handle_qbytearray(raw_stdout, enco)
          else:
              stdout = self._partial_stdout
  
          raw_stderr = self._process.readAllStandardError()
          stderr = handle_qbytearray(raw_stderr, enco)
          result = [stdout.encode(enco), stderr.encode(enco)]
  
          if PY2:
              stderr = stderr.decode()
          result[-1] = ''
  
          self._result = result
  
          if not self._fired:
              self.sig_finished.emit(self, result[0], result[-1])
  
          self._fired = True
  
          return result
docs: Retrieve information.