unix中wait系统调用的使用

unix中wait系统调用的使用,unix,Unix,我对wait的语法有点困惑。在维基百科中,wait的语法是wait[pid],而在手册页中,wait的语法是pid\t wait(int*status)。我的印象是,我们不能用进程的pid调用wait,我们需要使用waitpid。谁能澄清我的疑问。两篇文章的链接如下: (命令) (系统调用) (系统调用) 您将shell中的wait命令与编程中使用的类似函数混淆了。shell使用一个名称,并根据其使用方式决定要执行的操作 如果使用不带参数的wait命令,它将调用wait()以等待任何子级退出 如

我对wait的语法有点困惑。在维基百科中,wait的语法是wait[pid],而在手册页中,wait的语法是pid\t wait(int*status)。我的印象是,我们不能用进程的pid调用wait,我们需要使用waitpid。谁能澄清我的疑问。两篇文章的链接如下:

  • (命令)
  • (系统调用)
  • (系统调用)

  • 您将shell中的
    wait
    命令与编程中使用的类似函数混淆了。shell使用一个名称,并根据其使用方式决定要执行的操作

    如果使用不带参数的
    wait
    命令,它将调用
    wait()
    以等待任何子级退出

    如果使用带有参数的
    wait
    命令,它将调用
    waitpid()
    以等待特定PID退出。

    一个是编程中使用的函数,另一个是shell上使用的命令。他们彼此无关。(好的,从技术上讲他们是这样做的,后者使用前者)