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