def METHOD_NAME(self, job):
    import psutil  # pylint: disable=import-outside-toplevel,import-error
    if job is None:
        return
    job = int(job)
    # Use diskcache transaction so multiple process don't try to kill the
    # process at the same time
    with self.handle.transact():
        if psutil.pid_exists(job):
            process = psutil.Process(job)
            for proc in process.children(recursive=True):
                try:
                    proc.kill()
                except psutil.NoSuchProcess:
                    pass
            try:
                process.kill()
            except psutil.NoSuchProcess:
                pass
            try:
                process.wait(1)
            except (psutil.TimeoutExpired, psutil.NoSuchProcess):
                pass