如果我的系统调用引发错误,它是否可以容忍?

时间:2018-02-03 22:28:57

标签: c linux unix operating-system

我正在实施多阶段管道流程。为了避免竞争条件,我必须在父进程和子进程中为子进程设置进程组。但是,如果子进程已输入dynamic_cast,则父进程中的setpgid可能会引发错误。

  • 如果任何系统调用引发错误,是否有任何经验法则我们应该退出程序?
  • 我可以抓住这样的错误并继续我的计划吗?
  • 这是一个很好的编码惯例吗?
  • 处理这种情况的更优雅方法是什么?
execvp

1 个答案:

答案 0 :(得分:1)

我想以下链接可以很好地回答您的问题:

POSIX, Part 1: Error handling

但我不认为你正在使用一个好的编码约定。它对故障的容忍度很低。