Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1327 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs

  [Apache] Processus qui boucle

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Apache] Processus qui boucle

n°73480
jeremy
Posté le 04-03-2002 à 15:29:43  profilanswer
 

Bonjour,
 
j'ai fait un CGI en C qui crée un processus qui va boucler.
Donc le processus fils boucle et le processus père (celui lancé par le navigateur) se termine. (fork, execlp et compagnie)
 
J'aimerai donc qu'au niveau du navigateur le processus se termine, mais que le processus fils continue de boucler.
 
Or au niveau du navigateur on continue de voir la barre des taches se charger.
 
Comment résoudre mon pb ?
 
Merci.


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
mood
Publicité
Posté le 04-03-2002 à 15:29:43  profilanswer
 

n°73481
saudium
Posté le 04-03-2002 à 15:32:07  profilanswer
 

revoir le CGI  :??:


---------------
root 66
n°73483
jeankevin
Posté le 04-03-2002 à 15:33:44  profilanswer
 

jeremy a écrit a écrit :

Bonjour,
 
j'ai fait un CGI en C qui crée un processus qui va boucler.
Donc le processus fils boucle et le processus père (celui lancé par le navigateur) se termine. (fork, execlp et compagnie)
 
J'aimerai donc qu'au niveau du navigateur le processus se termine, mais que le processus fils continue de boucler.
 
Or au niveau du navigateur on continue de voir la barre des taches se charger.
 
Comment résoudre mon pb ?
 
Merci.  




Pourquoi ne pas lancer le prog c a partir d'un script shell qui serait le cgi?

n°73484
jeremy
Posté le 04-03-2002 à 15:34:49  profilanswer
 

Je fait simplement un fork suivi d'un execlp qui lance donc le programme n°2 qui boucle.
Si je lance le programme au shell, il se termine bien directement et le processus qui boucle continue de boucler sans problème.
Or c'est quand je le lance en tant que CGI ke la barre des tachers continue de chercher indéfiniment, alors ke le 1er programme est bien terminé.
 
Une idée ?
Merci.


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73485
saudium
Posté le 04-03-2002 à 15:35:17  profilanswer
 

jean >  
ca changerait quoi  si ce n'est que tu n'auras plus du tout la main cette fois ?

 

[jfdsdjhfuetppo]--Message édité par saudium--[/jfdsdjhfuetppo]


---------------
root 66
n°73486
saudium
Posté le 04-03-2002 à 15:36:30  profilanswer
 

jeremy a écrit a écrit :

Je fait simplement un fork suivi d'un execlp qui lance donc le programme n°2 qui boucle.
Si je lance le programme au shell, il se termine bien directement et le processus qui boucle continue de boucler sans problème.
Or c'est quand je le lance en tant que CGI ke la barre des tachers continue de chercher indéfiniment, alors ke le 1er programme est bien terminé.
 
Une idée ?
Merci.  




 
le browser n'a pas recu un signal de fin :??:  
 
mais là je m'aventure ;)


---------------
root 66
n°73487
jeremy
Posté le 04-03-2002 à 15:37:10  profilanswer
 

Jean>
en effet je crois ke je vais essayer merci.


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73489
jeremy
Posté le 04-03-2002 à 15:39:10  profilanswer
 

saudium a écrit a écrit :

 
 
le browser n'a pas recu un signal de fin :??:  
 
mais là je m'aventure ;)  




 
en effet çà doit etre çà mais comment résoudre çà, c un autre problème lol


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73490
jeremy
Posté le 04-03-2002 à 15:41:06  profilanswer
 

Tout compte fait çà change rien en passant par un shell.
En fait faudrait en qque sorte réussir à lancer ce 2ème processus en tache de fond.


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73491
saudium
Posté le 04-03-2002 à 15:41:10  profilanswer
 

là je vais avancer des trucs  meme pas vérifié :D :
 
  killer le pid du process en question avant la terminaison du script


---------------
root 66
mood
Publicité
Posté le 04-03-2002 à 15:41:10  profilanswer
 

n°73492
saudium
Posté le 04-03-2002 à 15:42:01  profilanswer
 

oops , j'ai peut etre mal lu le sujet du probleme :(

 

[jfdsdjhfuetppo]--Message édité par saudium--[/jfdsdjhfuetppo]


---------------
root 66
n°73500
jeremy
Posté le 04-03-2002 à 16:08:46  profilanswer
 

Donc si je résume, j'aimerai créer un processus qui fonctionnerait en mode asynchrone : le père crée le fils qui s'exécute en tache de fond et le père reprend la main et se termine.
 
Qqun pour m'aider ?
 
merci.


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73501
saudium
Posté le 04-03-2002 à 16:10:15  profilanswer
 

le pere reprend la main ?  
 
ch'uis pas expert en fork mais il me semble que t'as du faire un exit suite au fork .  
 
Dans ce cas , comment retrouver le pere ?


---------------
root 66
n°73505
jeremy
Posté le 04-03-2002 à 16:16:04  profilanswer
 

saudium a écrit a écrit :

le pere reprend la main ?  
 
ch'uis pas expert en fork mais il me semble que t'as du faire un exit suite au fork .  
 
Dans ce cas , comment retrouver le pere ?  




 
Ben je différencie les 2 processus en fonction de la valeur renvoyée par fork.
 
Le pire c ke çà marche si je le lance à partir de la console, mais pas par Apache. Si je le lance en CGI, et ke je fais un ps -ef, le cgi est dans l'état <defunct> et le fils qui boucle et présent, et le navigateur patiente tjours.
 
Prise de tete power lol


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73506
saudium
Posté le 04-03-2002 à 16:19:55  profilanswer
 

attend , tu kill le pere ou non ?


---------------
root 66
n°73509
jeremy
Posté le 04-03-2002 à 16:22:52  profilanswer
 

Ben vi, le père se termine comme tout programme con en C, la différence c ke en lancant par Apache il se met en <defunct> alors k'a partir de la console il n'est plus dans la liste des processus en cours.
Louche power


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73513
saudium
Posté le 04-03-2002 à 16:24:55  profilanswer
 

jeremy a écrit a écrit :

Ben vi, le père se termine comme tout programme con en C,




 
:??:  
 
faut le specifier :  
 
  if (fork() != 0)
     exit(EXIT_SUCCESS);


---------------
root 66
n°73515
jeremy
Posté le 04-03-2002 à 16:29:21  profilanswer
 

saudium a écrit a écrit :

 
 
:??:  
 
faut le specifier :  
 
  if (fork() != 0)
     exit(EXIT_SUCCESS);  




 
çà change rien :-\


---------------
Savoir c'est vivre, et maintenir dans l'ignorance, c'est presque un homicide.
n°73516
saudium
Posté le 04-03-2002 à 16:30:20  profilanswer
 

peut etre voir du coté d'apache alors ...


---------------
root 66

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs

  [Apache] Processus qui boucle

 

Sujets relatifs
[apache/php] installation chrootéApache + php + slackware 8.0: marche pas...
Apache mod_mp3[Apache] Permission sur repertoire ?
aide configuration apache et sqlprobleme apache et httpd
[apache/php]Perl & Apache
APACHE 2 ???PB avec install apache sous debian
Plus de sujets relatifs à : [Apache] Processus qui boucle


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR