如何使用waitpid()来获取子进程的状态
how to use waitpid() to get the status of child process?
我试图获得子进程的状态。例如,当我运行"adjsafkl"时,这是一个不存在的命令,系统打印"WRONG",但是当我运行"cp sssa"时,文件夹也不存在,但系统不会将此命令标记为错误。我想知道是否有办法修复这个错误?
您可以在WIFEXITED:
后面检查WEXITSTATUS:WIFEXITED:如果子进程正常终止,返回true;也就是说,调用exit(3)或_exit(2),或者从main()返回。
WEXITSTATUS:返回子进程的退出状态。它由状态的最低有效的8位组成在调用exit(3)或_exit(2)时指定的子对象的参数。或者作为main()中返回语句的参数。这个宏只有当WIFEXITED返回true时才可以使用。
相关文章:
- C++ 继承:将子类传递给需要基类的函数并获取子类行为
- 终止 QProcess 不会终止子进程
- 什么时候最好在子进程中使用 CPU 或 I/O 密集型代码 [ C++ ]
- 子进程更新共享 mmap 内存,但父进程没有更改
- 如何从2d Boost.MultiArray获取子阵列?
- 获取特定进程的句柄数
- 使用 waitpid 时等待子进程终止
- 使用重定向标准处理子进程中的 kbhit
- 由 JOB 中的进程启动的子进程是否可以将 JOB 属性设置为脱离作业?
- 是否可以将子进程的 stdout 重定向到父进程中的另一个文件?
- kill() 总是返回 0(成功),即使在子进程已经结束之后?
- C++ Qt获取子python进程的返回值
- 视觉C++从父进程 ID 获取子进程 ID
- Bash:获取子进程名称
- 如何在浏览器子进程主机Impl->启动后获取浏览器子进程的进程ID
- 如何在Windows中获取当前进程的所有子进程的句柄
- 从非子进程获取退出代码
- 从Linux中的非子进程获取退出代码
- 如何使用waitpid()来获取子进程的状态
- 如何从子进程获取状态信息以度量资源利用率