wifexited的出处是哪里?这个网络流行语你听过吗?

吉云

今儿个,咱来聊聊我折腾 “wifexited” 这玩意的经过。我压根儿不知道这是就是在弄一个跟进程有关的小东西时碰上。

事情是这样的:

我当时在写一个程序,需要用到子进程。这子进程,干完活儿得告诉我一声,是顺利完成还是半路出岔子。我就去查资料,结果就碰到这个 “wifexited”。

wifexited的出处是哪里?这个网络流行语你听过吗?

这玩意儿到底干啥的?

说白,它就像个“侦探”,专门用来打探子进程是不是“寿终正寝”的。要是子进程正常结束,它就返回一个不是零的数;要是不正常结束,比如半路崩溃,它就返回零。

我是咋用上它的?

我一开始有点懵,不知道咋下手。后来我找到一个叫 “wait” 的函数,这函数能拿到子进程结束时的“状态信息”。这“状态信息”就像一个密码箱,里面装着子进程的各种情况。

  • 我先用 “wait” 函数拿到这个“密码箱”。
  • wifexited的出处是哪里?这个网络流行语你听过吗?

  • 然后,我把“密码箱”交给 “wifexited” 这位“侦探”。
  • “侦探”打开“密码箱”一看,立马告诉我结果:子进程是正常还是异常结束。

深入研究一下

我又仔细琢磨一下,发现 “wifexited” 返回的那个不是零的数,还能进一步“解码”。用另一个叫 “wexitstatus” 的家伙,就能从这个数里头提取出子进程的“退出码”。这“退出码”就像子进程留下的遗言,告诉我们它干

不过我发现这个“退出码”有点小坑。它只能表示 0 到 255 之间的数。要是子进程返回一个更大的数,那“退出码”就只能表示这个大数的一部分。用的时候得留个心眼。

wifexited的出处是哪里?这个网络流行语你听过吗?

我干

我把 “wifexited” 和 “wexitstatus” 这俩哥们儿都用上。这样,我就能清楚地知道子进程是正常结束还是异常结束,还能知道它想说这下,我的程序就能更好地跟子进程“沟通”。

整个过程,就像破案一样,挺有意思的!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]