Createprocess, le processus parent se termine avant le child.
Sim 2005
Messages postés86Date d'inscriptiondimanche 1 mai 2005StatutMembreDernière intervention18 juillet 2009
-
31 juil. 2007 à 15:46
Sim 2005
Messages postés86Date d'inscriptiondimanche 1 mai 2005StatutMembreDernière intervention18 juillet 2009
-
2 août 2007 à 21:17
Bonjour,
J'ai besoin de créer un processus enfant dans un programme. Lors de la fermeture du programme parent, le process enfant est terminé via exitprocess. Mais lorsque le procc parent est fermé plus brutalement, la routine appelant ExitProces n'est plus éxecutée, et seul le proces parent se ferme. Le processus enfant lui reste ouvert.
Y aurait-il une solution (en code "propre" de préférence) permettant de lier le child de façon à ce que si le process parent est terminé, il est fermé automatiquement?
Merci d'avance,
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 1 août 2007 à 13:06
Salut,
Je penses qu'essayer de fermer le fils depuis le parent n'est pas la bonne solution. En effet, on ne peut pas garantir l'execution d'un code final lors la fermeture brutale d'une application.
Il faut que ce soit le fils qui détecte la destruction du père, sans que le père n'est rien à faire.
Il y a certainement plusiseurs méthodes pour cela. peut être qu'un message est envoyé automatiquement au porcessus fils qand le père meurt comme sous linux. Sinon, on peut tester l'existence du père périodiquement à l'aide d'un timer. Ou démarrer un thread dans le fils qui lance un WaitforSingleObjectsur le processus du père.