多线程叉

时间:2011-05-19 10:00:11

标签: linux multithreading fork

fork()函数可用于复制多线程进程。如果是这样,所有线程都将完全相同,如果不是,为什么不呢。如果无法通过fork完成复制,是否还有其他功能可以帮我完成?

3 个答案:

答案 0 :(得分:16)

在fork之后,只有一个线程在子进程中运行。这是POSIX标准要求。请参阅问题the top answerfork and existing threads ?

答案 1 :(得分:15)

不,孩子只有一个帖子。分叉线程进程并非易事。 (请参阅此文Threads and fork(): think twice before mixing them了解详情)。

我不知道克隆进程及其所有线程的任何方法,我不认为这在Linux上是可行的。

答案 2 :(得分:-1)

没有

fork使用自己的线程创建一个新进程,复制文件描述符和虚拟内存。

子进程与父亲没有共享相同的记忆。所以这绝对不一样。