def ckill(_process) -> None: """Cross-platform Kill Kill process specified by process-object or PID ckill(PID) ckill(process-obj) """ if _platform == r'win32': _handle = kernel32.OpenProcess(1, False, _process.pid) kernel32.TerminateProcess(_handle, -1) kernel32.CloseHandle(_handle) else: try: _kill(_process, SIGKILL) except OSError: _kill(_process.pid, SIGKILL)
def ckill(_process) -> None: """Cross-platform Kill Kill process specified by process-object or PID ckill(PID) ckill(process-obj) """ if _platform == 'win32': _handle = kernel32.OpenProcess(1, False, _process.pid) kernel32.TerminateProcess(_handle, -1) kernel32.CloseHandle(_handle) else: try: _kill(_process, SIGKILL) except Exception: # pylint: disable=W0703 _kill(_process.pid, SIGKILL) return None
def renew(method='hup'): ''' Renews TOR IP Address. Make sure, its run by root (uid=0) NOTE: Need to add support for other methods, like by using stem maybe, idk.. Parametes: method (str): Method to use for renewing IP Address (eg.: hup) Returns: bool: If renewal was completed ''' if method.lower() == 'hup': if is_root(): pid = get_pid('tor') _kill(pid, _SIGHUP) return True else: print(bad('Make sure you are Super User!')) else: print(bad('Wait! -> Unknown method')) return False
def terminate_job(self, pid, signal=None): _kill(pid, signal or _signal.SIGTERM)
def kill(pid): _kill(pid, SIGTERM)