Utilité du fork()

LocalStone Messages postés 514 Date d'inscription mercredi 19 mars 2003 Statut Membre Dernière intervention 1 mars 2009 - 8 nov. 2007 à 18:11
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 9 nov. 2007 à 16:33
Salut à tous,
Alors voilà ma question ... A quoi sert la fonction fork() ?
On fait de la programmation système à l'école et on a vu qu'il existait une fonction fork, qui permettait de copier un processus et de l'executer en parallèle du processus père. Jusque là, pas de soucis ... Mais je ne vois pas à quoi ça sert ... Ce ne serait pas mieux d'utiliser des threads ou quelque chose de la sorte ?
Merci beaucoup  pour vos réponses.

LocalStone

2 réponses

monchr Messages postés 6 Date d'inscription lundi 6 février 2006 Statut Membre Dernière intervention 11 novembre 2007
8 nov. 2007 à 20:19
Le processus que tu obtiens avec la commande fork() te permet de créer un processus indépendant de celui qui l'a créé.

En opposition avec les threads qui se terminent si le programme qui les a créé se termine.
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
9 nov. 2007 à 16:33
Salut,


Je me suis toujours posé la question aussi !


Il me semble qu'une fois on m'a répondu que ça permettait de killer
facilement à la main un processus fils en cas de problème avec celui-ci
(Boucle infini...), sans pour autant tuer toute l'appli. Avec un
serveur qui créerait un thread par client au lieu de forker, il
faudrait couper la chique à tous les clients.

<hr size="2" width="100%" />3ème année en ecole d'ingé d'info cherche stage de 4 mois à partir du 01/04/08
0
Rejoignez-nous