c - 如何在 C/Linux 中检测程序终止?

标签 c linux process

应用程序如何发现它刚刚开始终止?我可以为此使用信号处理程序吗?

最佳答案

启用atexit() .当程序正常终止时,它会调用一个函数。

示例代码:

#include <stdio.h>      
#include <stdlib.h>    
void funcall(void);
void fnExit1 (void)
{
  printf ("Exit function \n");
}

int main ()
{
  atexit (fnExit1);
  printf ("Main function start\n");
  funcall();
  printf ("Main function end\n");
  return 0;
}

void funcall(void)
{
    sleep(2);
    exit(0);
}

输出:

Main function start
Exit function 

关于c - 如何在 C/Linux 中检测程序终止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21451296/

相关文章:

c - 使用 printf 和 inet_ntoa 打印 ip 地址时出现奇怪的错误

c++ - 是否有任何将资源嵌入 Linux 可执行镜像的标准方法?

Linux 运行内核探测 systemtap 脚本失败,出现语义错误 : no match"

java - 在后台启动应用程序

c++ - 这段代码是什么意思

c - 共享内存的重新分配

c# - 从 C# 启动 Debug模式应用程序

进程监控 CreateProcessNotifyRoutineEx

c - 目标中调用的 Makefile

python - 如何在 Linux 上用 python 创建格式良好的 word 文档(.DOC)?