Foros del Web » Programación para mayores de 30 ;) » C/C++ »

¿Un hilo puede ejecutar otro proceso?

Estas en el tema de ¿Un hilo puede ejecutar otro proceso? en el foro de C/C++ en Foros del Web. Hola, tengo una duda a la que no encuentro respuesta. Si en un proceso creo un nuevo hilo y asocio el hilo a la ejecución ...
  #1 (permalink)  
Antiguo 17/12/2012, 10:30
 
Fecha de Ingreso: agosto-2008
Mensajes: 240
Antigüedad: 15 años, 8 meses
Puntos: 6
¿Un hilo puede ejecutar otro proceso?

Hola,

tengo una duda a la que no encuentro respuesta. Si en un proceso creo un nuevo hilo y asocio el hilo a la ejecución de otro comando mediante execvp() o similar, ¿terminará la ejecución del proceso que creó el hilo, o simplemente se terminará el hilo y la ejecución del proceso principal seguirá?

Gracias de antemano,
gonzo
  #2 (permalink)  
Antiguo 17/12/2012, 10:47
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: ¿Un hilo puede ejecutar otro proceso?

Yo diría que el proceso padre sigue ejecutando de forma paralela. Lo único que creo que el proceso hijo sería "ciego" (no podrías interactuar con pantalla), puesto que los canales de entrada y salida estarían asignados al proceso inicial (el padre).

P.D.: Esto hablando de aplicaciones por consola, si quieres lanzar mediante execvp una aplicación de escritorio, esta si que se vería.
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 17/12/2012, 14:45
Avatar de iblancasa  
Fecha de Ingreso: diciembre-2012
Ubicación: España
Mensajes: 143
Antigüedad: 11 años, 4 meses
Puntos: 16
Respuesta: ¿Un hilo puede ejecutar otro proceso?

Cuando lanzas un proceso con execvp, fork, etc, lo que creas es un nuevo proceso. Ese nuevo proceso tiene el mismo código que el proceso padre y ambos se ejecutan a la vez (de forma concurrente).
Una vez que el proceso padre acabe, matará también al proceso hijo. Para que ésto no ocurra, existen algunas llamadas al sistema para esperar a que los hijos terminen (busca en Google o ejecuta en consola de Linux la orden man fork o de la que quieras obtener información).
Un saludo.

Etiquetas: hilo
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 17:18.