def METHOD_NAME(self):
    tmp = self._env.copy()
    futils.add_env_common(tmp, os.environ.copy())
    self.file_gdb = tempfile.NamedTemporaryFile(mode='r+')
    self.file_gdb.writelines('%s' % command for command in self.commands)
    self.file_gdb.seek(0)
    run_list = self._prepare_args()
    try:
        self._process = sp.run(args=run_list,
                               env=tmp,
                               stdin=sp.PIPE,
                               stdout=sp.PIPE,
                               stderr=sp.PIPE,
                               universal_newlines=True,
                               timeout=self.timeout)
    except sp.TimeoutExpired:
        self._close()
        raise
    logging.info(self._process.stdout)
    logging.error(self._process.stderr)
    self.validate_gdb()
    self._close()