[C con Clase] Consulta sobre threads

Programante programante en gmail.com
Jue Abr 15 23:23:11 CEST 2010


El 15/04/10 18:57, Hl3 escribió:
> Gracias a los dos por contestar e investigaré ambas soluciones.
>
> La cosa es que estaba practicando con treads en c y se me ocurrió hacer un reloj.
>
> Todo funciona perfecto, pero claro, he tenido que optar por dos soluciones que no me gustan nada, a saber:
>
> 1.- Dejar el main en un bucle infinito o esperando una tecla
> char c=getchar()
>
> 2.- Hacer un pthread_join que tampoco me convence porque lo que quiero es que me vuelva el prompt y el reloj siga a su bola hasta que lo pare por ejemplo con kill.
>
> Esa es la cosa.
>
> Gracias.
>   

Si quieres ejecutar programa1 y volver al prompt, la shell te permite
ejecutarlo como:
programa1 &

El prompt no te lo captura el hilo principal, sino el programa, por lo
que para que el programa en un momento dado de su ejecución retorne al
prompt debes clonar el programa y cerrar al padre, que es por el que
está esperando la shell. Puedes conseguirlo con la línea: if (fork() >
0) exit(0);





Más información sobre la lista de distribución Cconclase