在linux2.4x kernel中只有直接调用fork()的线程才能用waitpid()来等待子进程的结束,才其它线程中尝试使用waitpid()将会返回ECHILD错误,这显然与POSIX不符。在2.6 kernel中,新的线程实现(NPTL)已经解决了这个问题。