有没有办法干净地杀死uvicorn?
即,如果它在终端的前台运行,我可以在其中键入 ^C。这会导致 uvivorn 进程终止,并清理所有工作进程。(即,他们走了。)
另一方面,如果 uvicorn 在没有终端的情况下在后台运行,那么我想不出一种方法来干净地杀死它。它似乎忽略了 SIGTERM、SIGINT 和 SIGHUP。我可以用 SIGKILL(即 -9)杀死它,但是工作进程仍然活着,我必须跟踪所有工作进程并将它们也杀死。这并不理想。
我在 Red Hat Enterprise Linux Server 7.3 (Maipo) 上将 uvicorn 与 CPython 3.7.4、uvivorn 版本 0.11.2 和 FastAPI 0.46.0 一起使用。