如何在Windows中启动子流程?

Mr.*_*.Tu 6 windows fork

在POSIX中,有fork()创建子流程的功能.如何fork()在Windows中实现功能?

NPE*_*NPE 8

fork()在Windows上没有直接的等价物.

CreateProcess()是可用于创建新进程的本机函数(但同样,语义与fork()s的不同).

换句话说,在Unix上,进程可以廉价地创建自己的克隆.在Windows上没有廉价的方法可以做到这一点.

如果你不关心克隆方面fork(),那么CreateProcess()应该做得很好.

  • @Tu_JianWu:fork()创建的新进程继承父进程的状态,包括变量的值和当前的指令指针.CreateProcess()创建的新进程没有,它是从头开始的.fork()也只能创建已经运行的可执行文件的新副本,CreateProcess()可以启动任何exectuable. (5认同)