Matar proceso desde otro procso

Started by gianfrancopintus, January 02, 2010, 02:34:47 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

gianfrancopintus

Como hago para matar un proceso que es llamado por un proceso padre desde el proceso padre.
Ejemplo parte del loop del protagonista()
[code language="bennu"]
      IF ( collision ( type disparoEnemigo ))                 

         IF (vida == 0)

            exit(0);

         ELSE         

            vida = vida - 10;
//Esto obviamente no existe, pero es lo que quiero hacer, matar al proceso disparoEnemigo() desde protagonista()
            disparoEnemigo.Break;

                                                               
         END

      END   

[/code]

Gianfranco Pintus

josebita

Prueba:
[code language="bennu"]
      IF ( proceso_colision = collision ( type disparoEnemigo ))
         IF (vida == 0)
            exit(0);
         ELSE
            vida = vida - 10;
//Debes referenciar al proceso en concreto con el que has colisionado, que se guarda en la variable (debes definirla proceso_colision)
            signal(proceso_colision, S_KILL);
         END
      END   
[/code]

Futu-block

uffff, eso de matar un proceso no lo llevo muy bien...

SplinterGU

si es un proceso que tu mismo has creado, con mandarle una señal al id que has obtenido tras la creacion es suficiente...

ejemplo...


pid_hijo = hijo();

...

signal( pid_hijo, S_KILL );

Pero si lo que quieres es hacerlo tras un colision, entonces es como dijo josebita.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2