Foros del Web » Programando para Internet » PHP »

Me gustaría saber por qué???

Estas en el tema de Me gustaría saber por qué??? en el foro de PHP en Foros del Web. Hola amigos un saludo a todos. Me surge una pregunta. Tengo una función recursiva que realiza muchas cosas pero lo ultimo es lo que necesitan ...
  #1 (permalink)  
Antiguo 19/11/2011, 14:55
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Me gustaría saber por qué???

Hola amigos un saludo a todos.

Me surge una pregunta.

Tengo una función recursiva que realiza muchas cosas pero lo ultimo es lo que necesitan saber para contestar mi pregunta.

Dentro de la Funcion ejemplo()

1.- Verifica si el servidor esta conectado a internet en caso contrario reinicia el router, duerme 10 segundo, vuelve a verificar etc.... etc... etc... en caso de que se exista conexión a internet se vuelve a ejecutar la función ejemplo().

2.- Verifica si la dirección IP del servidor sigue teniendo acceso al sitio web que se consulta con curl, en caso contrario se asigna una nueva direccion ip, verifica coneccion a internet, dando positivo todo vuelve a ejecutar la función ejemplo()

3.- Idem, se hacen varias tareas de este tipo, con algunas decisiones para determinar en que momento se debe ejecutar la función ejemplo().

EL punto es que la función ejemplo() siempre será ejecutada una y otra y otra vez.

-..------> Ahora sí la pregunta:

Por que razón, aunque cierra el navegador el script se sigue ejecutando?

Es decir, yo estoy ejecutando el programa PHP desde mi navegador en forma local, espero 5 segundo y cierro el navegador. Cómodamente me voy a dormir, en la mañana regreso y me encuentro con todos los logs resultado de 1 noche de ejecución, que la misma función escribe en archivos de texto....

No hay forma de pararlo a menos que desconecte la internet (pero cuando lo vuelva a conectarme el programa seguirá). La otra opción es que apague el servidor. (No funciona con solo desconectar APACHE)

Por que razón. A mi me gusta que pase esto pues para esto fue creado, pero sinceramente yo creía que al cerrar el navegador el script se detendría.

¿Quiero saber porque sucede esto?

Se que tiene que ver porque es una función recursiva que esta creada para no detenerse jamás, pero... ¿Por qué desconectado APACHE sigue corriendo el programa?? Vaya si que tengo dudas.

Saludos amigos.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #2 (permalink)  
Antiguo 19/11/2011, 17:50
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 9 meses
Puntos: 55
Respuesta: Me gustaría saber por qué???

sin codigo es dificil saber el porque.

pero me imagino que el codigo llame algun tipo de ejecutable y es por ello que luego que cierras todo te sigue andando

nose digo yo
__________________
<?php echo "No te metas a lo hondo del Mar si no sabes nadar, primero aprende a nadar" ?>
...Error en linea: 1 o.O
  #3 (permalink)  
Antiguo 19/11/2011, 22:21
Avatar de jorgelpadronb  
Fecha de Ingreso: agosto-2011
Ubicación: Cuba
Mensajes: 281
Antigüedad: 12 años, 8 meses
Puntos: 37
Respuesta: Me gustaría saber por qué???

A lo mejor es que APACHE tiene algun mecanismo para reanudar automáticamente los proceso que se hayan interrumpido inesperadamente al desconectarlo abruptamente. Algo así como una salva de seguridad de las tareas que estaban ejecutando al fallar el servidor de pronto o algo de eso. No se, no estoy seguro, lo digo como una suposición. Habría que investigarlo a ver si es cierto.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:03.