21 lines
442 B
Python
21 lines
442 B
Python
"""Util to handle processes."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import subprocess
|
|
from typing import Any
|
|
|
|
# mypy: disallow-any-generics
|
|
|
|
|
|
def kill_subprocess(
|
|
# pylint: disable=unsubscriptable-object # https://github.com/PyCQA/pylint/issues/4369
|
|
process: subprocess.Popen[Any],
|
|
) -> None:
|
|
"""Force kill a subprocess and wait for it to exit."""
|
|
process.kill()
|
|
process.communicate()
|
|
process.wait()
|
|
|
|
del process
|