SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: natt en Domingo 15 de Agosto de 2004, 12:54

Título: Procesos
Publicado por: natt en Domingo 15 de Agosto de 2004, 12:54
Hola!Estoy haciendo un videojuego y hay una cosa q soy incapaz de conseguir. Tengo varios procesos hijos (en este caso aliens) que  conocen las coordenadas de los humanos que deben atrapar, por lo tanto si un alien mata a un humano deberá comunicarle a los otros procesos que mató a ese humano para que el resto de aliens no vuelvan a matar al mismo humano. El proceso padre pasa a los hijos las coordenadas iniciales y a partir de ahí los hijos deben comunicarse entre ellos.
El paso de las coordenadas lo he implementado mediante tuberías y señales pero no se me actualizan las variables, cada proceso sigue teniendo sus coordenadas. ¿Alguien me puede ayudar?ES URGENTE.MUCHAS GRACIAS.No les pongo el código porque es muy largo todo el programa, lo que no consigo es esa parte.
Título: Re: Procesos
Publicado por: JuanK en Domingo 15 de Agosto de 2004, 17:28
y por que lo estas haciendo con procesos hijos?
no se.

lo seguro es que estas comentiendo errores de concurrencia asi que debes usar mutex.
Título: Re: Procesos
Publicado por: Ruben3d en Miércoles 18 de Agosto de 2004, 01:59
No uses procesos para eso, no te va a dar más que problemas. Usa hilos (threads), que pueden compartir fácilmente la memoria, y sincroniza los accesos con los mutex, como bien dice JuanK.

Un saludo.

Ruben3d
Título: Re: Procesos
Publicado por: JuanK en Miércoles 18 de Agosto de 2004, 05:56
conozco la diferencia entre procesos hijos e hilos...
pero me queda una duda en este momento ya que no recuerdo muy bien este rollo...
que no se supone que la filosofia de los mutex para los hilos aplica igual para los procesos hijos?
Título: Re: Procesos
Publicado por: Ruben3d en Viernes 20 de Agosto de 2004, 01:47
Le he recomendado los hilos porque comparten toda la memoria de la aplicación y todos los descriptores. Para mi es más fácil así hacer lo que quiere, ya que los procesos son mucho más pesados e incómodos de manejar. No sé de ningún juego que haya implementado ese tipo de cosas con procesos en vez de hilos.

Un saludo.

Ruben3d