Darle una segunda oportunidad antes de morir

Started by warrior_rockk, August 04, 2010, 10:04:33 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

warrior_rockk

Buenas,

El caso es el siguiente. Mirando la documentacion de las nuevas funciones como la clausula Onexit y la funcion signal_action, pensaba, erroneamente, que podía darle una segunda oportunidad a un proceso antes de morir, ignorando la señal de kill JUSTO DESPUES de que un proceso mandara matarlo. Por supuesto, esto no ha funcionado ya que, cuando se manda a un proceso morir, si no estaba en modo de ignorar las muertes previamente, lo mata si o si. ¿No habria manera de modificar la clausula Onexit para que sea posible no matarlo y asi poder condicionar la muerte?
No me sirve el llamar a signal_action antes e ignorar la muerte siempre porque necesito evaluarlo en el momento que alguien manda una señal de matar a ese proceso.

Saludos y gracias!

FreeYourMind

Para eso usa una variable auxiliar a la que sumas, y por ejemplo si es = 2 ejecutas el signal.

warrior_rockk

No si, métodos para realizar lo que busco hay miles. Mas bien mi post era para "reflexionar" si sería adecuado, funcional o válido, el modificar en un futuro la clausula Onexit para poder evitar la muerte de un proceso a pesar de que alguien haya enviado un signal de matarlo. La manera adecuada de hacer esto es con la nueva funcion de signal_action si, pero, ¿y si nos interesara seguir sabiendo si alguien nos está enviando kills? Onexit modificado nos lo podría decir. Gracias de todas formas free yourMind

SplinterGU

por ahora no se puede, hay que agregar funcionalidad.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Ten en cuenta que cuando se le manda una señal a un proceso, se le pide que de un salto a otra parte de su código, volver atrás es imposible (bueno, lo sería si se guardasen datos en pila, etc, pero no es el caso).
Lo que tienes que hacer es que el propio proceso controle cuando se puede matar y cuando no, según su estado. Podrías usar la misma recomendación que se hace con los gráficos de los personajes: tener una sección aparte dentro del proceso que controlen los gráficos en función de la acción actual, de forma que si cambias el FPG sólo tengas que acceder a dicha sección y no rebuscar por todo el código.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

drumpi, esto no es imposible, de hecho ya esta pensado y preparado para hacerlo, solo necesito tiempo como siempre.
lo de la pila, saltos y volver, ya esta soportado, de hecho ya se hace en algunas funciones (una de las tantas funcionalidades que muchos no lograron comprender para que las puse... pero no importa, yo se lo que hago, por que y para que...)
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

warrior_rockk

Genial SplinterGU! Pienso que será muy util y, a pesar de que siempre existe alguna solución para cualquier problema, teniendo esta funcionalidad quedará muy intuitivo y muy limpito. Gracias a todos!

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

warrior_rockk

Ni pretendo que venga pronto. Hay mil maneras de resolver los problemas de programación que uno se pueda encontrar con las herramientas que tenemos actualmente en bennu, pero es gratificante saber que el proyecto continuará mejorandose en el futuro  :)