我一直试图弄清楚如何在Linux内部使用fork-exec机制.根据计划,一切都在继续,直到一些网页开始让我困惑.
据说,一个子进程应该严格使用_exit()而不是简单exit()或正常的返回main().
据我所知,Linux shell fork-execs每个外部命令; 假设我上面说的是真的,结论是这些外部命令和Linux shell中发生的任何其他执行都不能正常返回!
维基百科和其他一些网页声称,我们必须使用_exit()它来防止子进程导致删除父进程的临时文件,同时可能会发生stdio缓冲区的双重刷新.虽然我理解前者,但我没有任何线索如何双重刷新缓冲区可能对Linux系统有害.
我花了一整天的时间......感谢任何澄清.