Vérifier que mon fils est en vie avant de lui donner des ordres
Résolu/Fermé
A voir également:
- Vérifier que mon fils est en vie avant de lui donner des ordres
- Verifier un lien - Guide
- Retrouver mon compte copains d'avant - Forum Réseaux sociaux
- Copains d'avant qui a visité mon profil ✓ - Forum Réseaux sociaux
- Comment savoir qui a visité notre profil copain d'avant et facebook ? - Forum Facebook
- Perte de mes anciens accès pour Copain D'Avant - Forum Réseaux sociaux
1 réponse
yg_be
Messages postés
23342
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
21 novembre 2024
Ambassadeur
1 550
27 févr. 2017 à 21:42
27 févr. 2017 à 21:42
bonsoir,
si je comprends bien, tu as sur ton serveur un processus parent et des processus fils.
chaque processus fils est en communication avec un processus exécuté sur une poste client.
que se passe-t-il quand tu arrêtes le processus client? le processus fils s’arrête-t-il sur le serveur, sans que le processus parent le remarque?
en d'autres mots, quel est ton soucis? le fait que le parent ne se rende pas compte que le fils est mort, ou bien que le fils ne se rende pas compte que le client est parti?
si je comprends bien, tu as sur ton serveur un processus parent et des processus fils.
chaque processus fils est en communication avec un processus exécuté sur une poste client.
que se passe-t-il quand tu arrêtes le processus client? le processus fils s’arrête-t-il sur le serveur, sans que le processus parent le remarque?
en d'autres mots, quel est ton soucis? le fait que le parent ne se rende pas compte que le fils est mort, ou bien que le fils ne se rende pas compte que le client est parti?
27 févr. 2017 à 22:59
si un client ce connecte, mon serveur fait un fork pour gérer ce dernier.
client et serveur peuvent alors s’échanger message/cmd l'uns avec l'autre.
le tout ce termine quand l'utilisateur tape "exit" dans le terminal du client, car avec cette commande mon serveur comprend que le client viens d’être shutdown proprement.
sauf que si durant l’exécution du client l'utilisateur décide de stopper l’exécution en mode bourrin avec un ctrl+c mon serveur va ce mettre a attendre indéfiniment car il ne comprendra pas que le client a était shutdown.
j'ai besoin d'un système qui vérifie l’existence de mon processus fils, que ce soit avec son pid, son fd ou autre. j'ai entendue parler de signal mais je sait pas en quoi il peut m'aider .
pour répondre a tes questions : mon problème c'est que mon serveur (processus parent)
ne ce rend pas compte du décès du processus fils si ce dernier a était kill avec un ctrl+c autrement pas de problème.
j'espere etre assez claire. merci de ton aide
27 févr. 2017 à 23:33
il me semble que ce n'est pas le processus fils qui est killé, mais le processus client.
le kill est fait sur le client, et je pense que cela ne cause pas automatiquement la mort du processus fils sur le serveur.
tu aimerais bien que la mort du processus client cause la mort du processus fils, et que le parent s'en rende ensuite compte.
moi, je suspecte que le processus fils survit au processus client. qu'en penses-tu?
28 févr. 2017 à 00:50
je m’était imaginer bêtement que le processus fils crée dans le serveur me servais de support pour le client et donc qu'il n'y avait que 2 processus en marche (le pere et le fils) ...
mais alors comment faire pour que la mort de mon client tue mon fils en même temps ? (sans oublié que il s’agit ici d'une mort subite ctrl+c) , peut ont rattaché deux processus entre eux pour leur faire subir le même sort ?
j'attend tes idée avec impatience. merci.
28 févr. 2017 à 09:14
28 févr. 2017 à 09:57