gpt4 book ai didi

Linux 杀死已停止父进程的子进程

转载 作者:太空宇宙 更新时间:2023-11-04 04:45:53 27 4
gpt4 key购买 nike

我是 Linux 初学者。我有一个在服务器上运行的多线程应用程序。为了停止应用程序,我执行了命令 application_name stop。该应用程序已被停止。但后来我意识到它的子进程仍在我的数据库上运行和处理。因为服务器上还有其他应用程序无法停止,所以我无法重新启动它。我该怎么做才能在不重新启动服务器的情况下终止这些子进程?

最佳答案

其中一些可以通过应用服务器进行管理,具体取决于您所使用的内容。借助 WebLogic、GlassFish、JBoss 和 Tomcat,您可以关闭特定应用程序,或将其删除并重新安装,而不会中断服务器上的其他应用程序。

application_name stop 非常模糊,听起来像是已经用于执行此类关闭操作的 shell 包装器。

正如 Joenas 所说,我建议使用 kill $PGID (或显式 kill -15 $PGID)。这使子进程有机会正确关闭,具体取决于它的编程方式。然后使用 ps aux (破折号不是必需的),然后检查子进程是否已终止。如果它仍然徘徊超过几秒钟,则执行无情的 kill -9 $PGID

PS。如果您是维护这些子进程的人,您可能需要重新考虑您的设计,并且可能使用线程,因为您希望它们随应用程序一起关闭。

关于Linux 杀死已停止父进程的子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36866041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com