Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: Feiner en Marzo 10, 2019, 12:19:02 AM

Título: [SOLUCIONADO] Comunicación entre dos programas
Publicado por: Feiner en Marzo 10, 2019, 12:19:02 AM
Buenas, el problema en el que tengo dudas es el siguiente:

En pocas palabras, tengo un programa en python que dentro tiene un bucle while true

Ahora, lo que quería saber es cómo podría hacer otro programa en python que pueda ejecutar, en el momento que quiera, para hacer que el programa anterior termine su while true, pero teniendo el cuidado de que ejecute el código que le sigue al while true.

Para aclarar, tengo una página web con un botón desde el que inicio el primer script python y quería poder finalizar la ejecución mediante otro botón, pero como mencioné antes sin hacerle un kill.
Título: Re:Comunicación entre dos programas
Publicado por: animanegra en Marzo 10, 2019, 09:08:46 AM
Lo más sencillo es, haz un fichero. SI dentro del fichero te encuentras la palabra STOP (o la que se te ocurra), pues significa que otro programa ha escrito en él para que pares el bucle. Dentro del bucle simplemente te dedicas a abrir el fichero y leerlo. En caso de que esté vacío sigues en el bucle y si no pues continuas en él. Quien diche creas un archivo dice crea un FIFO.
Título: Re:Comunicación entre dos programas
Publicado por: DtxdF en Marzo 10, 2019, 11:06:14 PM
@Feiner (https://underc0de.org/foro/index.php?action=profile;u=63092)

La duda sobre como parar el bucle de una manera sencilla seria la que te propuso @animanegra (https://underc0de.org/foro/index.php?action=profile;u=64559), pero si deseas comunicarte entre procesos te recomiendo que leas la comunicación entre procesos.

Información: https://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesos
Título: Re:Comunicación entre dos programas
Publicado por: Feiner en Marzo 11, 2019, 12:12:55 AM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Lo más sencillo es, haz un fichero. SI dentro del fichero te encuentras la palabra STOP (o la que se te ocurra), pues significa que otro programa ha escrito en él para que pares el bucle. Dentro del bucle simplemente te dedicas a abrir el fichero y leerlo. En caso de que esté vacío sigues en el bucle y si no pues continuas en él. Quien diche creas un archivo dice crea un FIFO.

Gracias por la idea @animanegra (https://underc0de.org/foro/index.php?action=profile;u=64559), una solución simple

No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
@Feiner (https://underc0de.org/foro/index.php?action=profile;u=63092)

La duda sobre como parar el bucle de una manera sencilla seria la que te propuso @animanegra (https://underc0de.org/foro/index.php?action=profile;u=64559), pero si deseas comunicarte entre procesos te recomiendo que leas la comunicación entre procesos.

Información: https://es.wikipedia.org/wiki/Comunicaci%C3%B3n_entre_procesos

Y gracias por la información @DtxdF (https://underc0de.org/foro/profile/DtxdF/), le echaré un vistazo.