首页 > 其他 > 详细

WIFEXITED/WEXITSTATUS/WIFSIGNALED

时间:2014-10-24 18:22:23      阅读:355      评论:0      收藏:0      [点我收藏+]
 WIFEXITED/WEXITSTATUS/WIFSIGNALED 
If the exit status value (*note Program Termination::) of the child
process is zero, then the status value reported by `waitpid or `wait
is also zero. You can test for other kinds of information encoded in
the returned status value using the following macros. These macros are
defined in the header file `sys/wait.h.
-- Macro: int WIFEXITED (int STATUS)
     This macro returns a nonzero value if the child process terminated
     normally with `exit or `_exit.
-- Macro: int WEXITSTATUS (int STATUS)
     If `WIFEXITED is true of STATUS, this macro returns the low-order
     8 bits of the exit status value from the child process. *Note
     Exit Status::.
-- Macro: int WIFSIGNALED (int STATUS)
     This macro returns a nonzero value if the child process terminated
     because it received a signal that was not handled. *Note Signal
     Handling::.
子进程的结束状态返回后存于status,底下有几个宏可判别结束情况
WIFEXITED(status)如果子进程正常结束则为非0值。
WEXITSTATUS(status)取得子进程exit()返回的结束代码,一般会先用WIFEXITED 来判断是否正常结束才能使用此宏。
WIFSIGNALED(status)如果子进程是因为信号而结束则此宏值为真
WTERMSIG(status)取得子进程因信号而中止的信号代码,一般会先用WIFSIGNALED 来判断后才使用此宏。
WIFSTOPPED(status)如果子进程处于暂停执行情况则此宏值为真。一般只有使用WUNTRACED 时才会有此情况。
WSTOPSIG(status)取得引发子进程暂停的信号代码,
http://blog.chinaunix.net/uid-10554711-id-2948333.html

 

WIFEXITED/WEXITSTATUS/WIFSIGNALED

原文:http://www.cnblogs.com/leijiangtao/p/4048889.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!