wait() 在 Unix 上做什么?

2024-01-07

我正在读关于wait()Unix 系统书中的函数。本书包含一个程序,该程序具有wait(NULL)在里面。我不明白那是什么意思。在其他程序中有

while(wait(NULL)>0) 

……这也让我摸不着头脑。

有人能解释一下上面的函数在做什么吗?


man wait(2) http://linux.die.net/man/2/wait

所有这些系统调用都用于等待状态更改 调用进程的子进程,并获取有关子进程的信息 谁的状态已经改变。状态改变被认为是: 子进程终止;孩子被信号拦住了;或者孩子被信号恢复

So wait()允许进程等待,直到其子进程之一更改其状态(例如存在)。如果waitpid()使用进程 ID 进行调用,并等待该进程specific子进程改变其状态,如果pid没有指定,则相当于调用wait()它等待any子进程改变其状态。

The wait()函数在成功时返回子进程 pid,因此当在如下循环中调用它时:

while(wait(NULL)>0) 

这意味着等待所有子进程退出(或更改状态)并且不再等待子进程(或直到发生错误)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

wait() 在 Unix 上做什么? 的相关文章

随机推荐

  • ElasticSearch 边缘NGram

    我有以下设置和分析器 put tests settings analysis analyzer standardWithEdgeNGram tokenizer standard filter lowercase edgeNGram toke
  • 如何重新加载使用“from module import *”导入的python模块

    我看到在这个有用的问答 https stackoverflow com q 437589 4518341可以使用的reload whatever module 或者 在 Python 3 中 imp reload whatever modu
  • 使用 ID 获取 AmChart 实例 / AmCharts4 Angular-Typescript 中的所有图表

    之前我们使用 this AmCharts 获取它们 AmCharts为我们提供了AmChartsService 通过它我们可以获取dom中的所有图表 升级后获取页面中所有图表的新方法是什么 None
  • 如何在全日历中设置外部事件的持续时间

    我正在尝试将 fullcalendar 与外部事件一起使用 我按照拖放外部事件的示例进行操作 这正是我所需要的 并且示例很好 我可以拖动外部事件并将其放在日历上 它们被转化为事件 但问题是它们都是 60 分钟长 我想更改这个值 但我找不到如
  • Javascript 获取附加了处理程序的元素

    当在元素上触发 onclick 事件时 如何从事件对象中获取事件附加到的元素 与单击的 target 元素相对 您可以访问currentTarget财产 https developer mozilla org en US docs Web
  • 如何使用纯 Javascript 删除父元素

    如何使用纯 JavaScript 删除父元素和所有相应节点 我没有使用 jQuery 或任何其他库 换句话说 我有一个元素 当用户单击它时 我想删除父元素的父元素 以及相应的子节点 table tr td Mohit td td 23 td
  • 如何在Windows中正确构建opencv以获得“opencv_createsamples.exe”

    我想学习和使用 haarcascade 分类器 使用 OpenCV 来检测我选择的对象 我在网上搜索发现createsamples实用程序有助于创建正像和负像图像的数据集 我知道如何在 python 中安装 OpenCV pip insta
  • 将 firebase 添加到代号一

    我正在使用 Codename One 框架开发我的应用程序 并使用 Firebase 将我的数据存储在云中 为了利用 Firebase 的所有潜力 我想将其添加到我的应用程序中 但由于我没有使用 Android Studio 或 Xcode
  • Terraform (0.12.29) 导入未按预期工作;导入成功,但计划显示销毁并重新创建

    一些背景 我们有 terraform 代码来创建各种 AWS 资源 其中一些资源是根据 AWS 账户创建的 因此被构造为存储在account scope我们项目中的文件夹 当时我们只有一个 AWS 区域 现在我们的应用程序是多区域的 因此将
  • 将 Subsonic.Select() ExecuteTypedList 方法与字符串结合使用

    这更多是关于泛型而不是亚音速的问题 想象一下如果有以下代码 List
  • Java 中的 IDisposable 隐喻?

    作为一名进入 NET 的 Java 开发人员 我想了解 IDisposable 接口 有人可以尝试解释一下这一点以及它与 Java 中发生的情况有何不同吗 谢谢 我写了一个关于 IDisposable 的详细系列文章 http reedco
  • Amazon Lex 在 Lambda Fulfillment 上 30 秒超时

    我有一个 lambda 函数 它通过网络服务与一些外部自动化绑定 完成任务大约需要 45 秒 我已经将 lambda 调用的时间限制更新为 2 分钟 并且当我测试时它工作正常 但是 当我在 Amazon Lex 中使用文本机器人时 我收到以
  • HtmlUnit 从 href 调用 javascript 来下载文件

    我尝试下载一个似乎必须通过浏览器单击的文件 该网站使用一个表单 其中包含多个指向名为 downloadFile 的 javascript 函数的 href 在此函数中 通过 document getElementById 获取名为 posl
  • Android APK 运行时不会生成

    我有几个 Android 应用程序和示例代码 我已经下载 编码了 所有这些都在我的 eclipse 工作区中 我已经在 eclipse 上安装了 android 开发所需的所有插件 图像 这些项目可以在您进行构建时完美编译 我得到 构建成功
  • 容器“Android 依赖项”引用不存在的库

    请原谅我的英语不好 我是法国人 所以 我的 android 项目遇到了问题 我收到此错误容器 Android 依赖项 引用不存在的库 我在谷歌上进行了大量搜索 结果是 该库是一个android库 大小写已勾选 该库在我的项目中被 调用 An
  • 有没有办法通过Python(pywin32)访问Excel上的切片器

    我正在使用 pywin32 Excel 工作簿 我在一张纸上有一些图表需要保存 问题是 该工作表中有一个切片器 可以过滤某个变量 我没有找到它的 pywin32 文档 而且我在这里没有任何关于我可以 或不能 如何做到这一点的线索 谢谢 有对
  • 适用于 .NET 的 SAML 库/组件

    任何人都可以推荐用于为 NET 中的联合登录实现生成 SAML 断言的库吗 如果它能与 ASP NET 会员 API 集成 那就更理想了 如果其他人偶然发现这一点 http saml2 codeplex com http saml2 cod
  • FTP 目录列表以 HTML 形式返回,而不是简单的 Linux ls 输出

    相关如何强制 C FtpWebRequest 使用直接 IP 访问 Internet 而不是通过 HTTP 代理 https stackoverflow com questions 28187521 how can i force a c
  • 为什么我不能在类外部重载 C++ 转换运算符作为非成员函数?

    这个问题以前曾被问过 但我觉得提问者在从未真正得到真正答案的情况下匆忙地认为答案是正确的 也许没有什么原因 这需要稍后纳入标准 你告诉我 不允许使用非成员函数重载 C 转换运算符的理由是什么 https stackoverflow com
  • wait() 在 Unix 上做什么?

    我正在读关于wait Unix 系统书中的函数 本书包含一个程序 该程序具有wait NULL 在里面 我不明白那是什么意思 在其他程序中有 while wait NULL gt 0 这也让我摸不着头脑 有人能解释一下上面的函数在做什么吗