def terminate(self): if self.returncode is None: try: _winapi.TerminateProcess(int(self._handle), TERMINATE) except OSError: if self.wait(timeout=1.0) is None: raise
def terminate(self): try: _winapi.TerminateProcess(self._handle, 1) except PermissionError: rc = _winapi.GetExitCodeProcess(self._handle) if rc == _winapi.STILL_ACTIVE: raise self.returncode = rc
def kill(self): if sys.platform == 'win32': import _winapi handle = _winapi.OpenProcess(1, False, self._process.pid) _winapi.TerminateProcess(handle, -1) _winapi.CloseHandle(handle) else: os.kill(self.process.pid, signal.SIGKILL)