Comme pour un processus classique, l'appel de fork() dans un thread duplique la totalité du processus. Cependant, cette manoeuvre peut s'avérer lourde s'il s'agit pour le thread de mettre en place un exec(). C'est pourquoi l'appel fork1() duplique uniquement le thread en cours sans dupliquer le reste du code du processus. En ce qui concerne l'héritage par fork1(), il est identique à l'appel fork() si ce n'est que le (PC) et la pile sont ceux du thread.