gpt4 book ai didi

linux - 如何在 Linux 中重新启动正在运行的进程?

转载 作者:太空宇宙 更新时间:2023-11-04 10:49:07 25 4
gpt4 key购买 nike

您好,我需要从 Linux 提示符重新启动正在运行的 C 进程。我在谷歌上搜索了一下,有些网站建议 SIGHUP,这对我来说不起作用。还有其他建议/指示吗?

我有以下代码片段

#include <stdio.h>
#include <unistd.h>

int main() {
fprintf(stderr,"%s","Entering main function\n");
while(1) {
sleep (1);
}
fprintf(stderr,"%s","Exiting main function\n");
return;
}

Linux 输出

#] ./simple &
[1] 489440
#] Entering main function
#] ps aux | grep simple
user 489440 0.0 0.0 3924 360 pts/135 S 13:25 0:00 ./simple
user 489710 0.0 0.0 105312 804 pts/135 S+ 13:25 0:00 grep simple
#] kill -1 489440
[1] Hangup ./simple
#] ps aux | grep simple
user 490181 0.0 0.0 105312 800 pts/135 S+ 13:25 0:00 grep simple
#]

最佳答案

如果您想使用信号重新启动您的进程,理论上您可以为 SIGHUP 创建您自己的信号处理程序,并让信号处理程序再次执行您的程序和参数。虽然;我怀疑您可能想在进行此操作之前真正阅读信号处理程序及其周围的语义。

参见:man signalman execvp

关于linux - 如何在 Linux 中重新启动正在运行的进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31796229/

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