c++ - exit(0) 和 raise(SIGTERM) 有什么区别
问题描述
我正在尝试在某些特定事件上终止我的应用程序。为什么一个人会使用 exit(0) 或 raise(SIGTERM) 而不是另一个?
另外由于 exit(0) 将 EXIT_SUCCESS 返回给主机,SIGTERM 有什么作用?总是失败吗?
解决方案
exit
导致程序以正常退出状态终止,其值由 to 的参数给出exit
,在您的情况下为 0。
raise
发出一个信号,可能会被捕获。如果它没有被捕获或阻止,则执行默认操作。对于SIGTERM
,默认动作是异常终止,导致异常终止的信号在程序的退出状态中可见。
这对 iOS 应用程序有什么影响,我不确定。
推荐阅读
- javascript - 使用每个内部的函数的值。.each 函数的函数 (jQuery)
- java - Vert.x - 使用 JDBC 驱动程序在批量插入中保留行顺序
- python - 如何在代码中为“流行”概念建模?
- android - 检查值是否已经在firebase数据库中(Android)
- javascript - 防止引导模式在页面加载时自动显示
- unity3d - 尽管有所有必要的组件,但 Unity UI 按钮根本不起作用
- c# - 将数据从数据库检索到 DataGridView C#
- python - 预测后的人脸重组尝试面对预测值的索引,然后得到索引 3 超出轴 0 的范围,大小为 2
- python - Python CPLEX 暖从不可行的解决方案开始
- python - 在python子进程中构建反应项目时JavaScript堆内存不足