有没有办法我可以启动另一个程序而无需fork()?

时间:2010-02-24 10:28:17

标签: c fork

我有一个用C编写的主程序,我需要它来并行启动另一个进程, 我使用了函数

system("./server");

问题是这个过程包含一个while(1)循环,所以它永远不会返回主应用程序......

有没有办法可以启动程序而无需fork()?

谢谢!

2 个答案:

答案 0 :(得分:5)

当然 - 只需这样做:

system("./server &");

答案 1 :(得分:5)

在UNIX / Linux中fork()(通常由exec()开发)是创建新流程的唯一方法。

所有其他方式(system(),某些操作系统spawn())确实使用fork()

所以fork()是不可避免的(对于UNIX / Linux)。