Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: Futu-block on September 25, 2011, 10:44:16 PM

Title: let_me_alone(); para dos?
Post by: Futu-block on September 25, 2011, 10:44:16 PM
cuando un proceso hace ''let_me_alone();'' y me jode al segundo de a bordo, ¿se puede hacer una especie de ''let_me_alone_ to_me_too();'' a este en cuestion??




y otra cosa de repaso: para hacer un juego en la caanoo/wiz/ etc, ¿habia que hacer algo con estos let_me_alone();?
Title: Re: let_me_alone(); para dos?
Post by: SplinterGU on September 25, 2011, 11:24:03 PM
si, se puede... se llama exit...
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 25, 2011, 11:29:57 PM
hahahhahahahaha, y de paso si quieres matar al que llama al programa haces un exec format c xDDD
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on September 26, 2011, 07:54:04 AM
ferpecto, ahora si que no podeis extrañaros por karmas negativos... :(

no, en serio; le_me_alone(); solo vale para un proceso ???
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 26, 2011, 08:11:46 AM
Pero afinal que quieres hacer ?
El let_me_alone mata todo excepto el proceso que lo llama, el tio dice 'dejame sólo'.
Si lo quieres matar tambien, resulta que matas todo el programa pues no tendria procesos (al menos que pongas un loop frame en el main).
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on September 26, 2011, 08:26:09 AM
quiero que mate a todo menos a dos; pero lo solucionaré creando al segundo despues de matarlo...
vá a haber una masacre, je jej e
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 26, 2011, 09:01:51 AM
Claro, es lo que tienes que hacer, aunque hace tiempo que sugeri un flag para que un proceso sea inmune al let_me_alone, para facilitar la programación, pero quedo en el tintero.
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on September 26, 2011, 09:24:14 AM
secundo tu moción, ya que destruir y crear el procesos dicen que gasta ''mucha luz'' je je je
Title: Re: let_me_alone(); para dos?
Post by: Yawin on September 26, 2011, 09:43:41 AM
Otra opción es hacer un signal para cada tipo de proceso. Al fin y al cabo, si no sabes qué procesos quieres matar, tienes un problema xDD
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 26, 2011, 10:03:17 AM
justo para evitar tener que poner un sinfin de TYPES de procesos, era la sugerencia  ;D
Title: Re: let_me_alone(); para dos?
Post by: KeoH on September 26, 2011, 10:55:46 AM
tambien puedes proteger del signal a los procesos a salvar, e irte al main() y hacer un signal(idmain,s_kill_tree); ..... donde idmain es la id del proceso principal y padre de todos xDD moririan todos menos los protegidos.
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 26, 2011, 11:25:18 AM
Relacionado
http://forum.bennugd.org/index.php?topic=2479.msg43897#msg43897 (http://forum.bennugd.org/index.php?topic=2479.msg43897#msg43897)
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on September 26, 2011, 01:56:57 PM
pues llevas razon, porque le hago una pausa y le aplico el let_me_alone(); y ya no puedo quitar la pausa...
Title: Re: let_me_alone(); para dos?
Post by: KeoH on September 26, 2011, 03:27:06 PM
Quote from: Futublock on September 26, 2011, 01:56:57 PM
pues llevas razon, porque le hago una pausa y le aplico el let_me_alone(); y ya no puedo quitar la pausa...

tantas ansias por matar no te dejan pensar claramente xD
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 26, 2011, 03:28:21 PM
Splinter en ese link (al fondo de la pagina que pongo) te enseña como implementar la pausa, pero por vago si quieres te vendo mi sistema de pausa del PolloPollo  ;D ;D
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on September 26, 2011, 03:50:22 PM
no, dejarse que no estoy preguntando mas, el problema se haya en que al hacer la pausa se hace un s_freeze_tree...

basta con que no coja en el ''arbol familiar'', en cuanto al let_me_alone(); no hay problema se crea cada vez un proceso necesario nuevo y a ''gastar luz'' que es de pilas, ja ja ja
Title: Re: let_me_alone(); para dos?
Post by: FreeYourMind on September 26, 2011, 03:52:59 PM
Mi pausa no usa let_me_alone ni siquiera signal a procesos xDD
Title: Re: let_me_alone(); para dos?
Post by: SplinterGU on September 26, 2011, 05:43:14 PM
Quote from: FreeYourMind on September 26, 2011, 03:28:21 PM
Splinter en ese link (al fondo de la pagina que pongo) te enseña como implementar la pausa, pero por vago si quieres te vendo mi sistema de pausa del PolloPollo  ;D ;D

ese link, tiene mi sistema de pausa que funciona perfectamente... y no solo hace una pausa, sino que luego restaura todos los procesos a su estado antes de la pausa...

no necesito otro sistema... gracias.
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on September 26, 2011, 08:27:06 PM
vale, le haré caso al esplinter porque soy fanboy de el...


lol


aunque free tambien puede decir como lo ha echo  ;D
Title: Re: let_me_alone(); para dos?
Post by: Drumpi on October 05, 2011, 07:31:54 PM
Los hombres de verdad no usan let_me_alone() (si no es para debug), identifican los procesos que existen y los matan uno a uno, porque saben quienes son (es decir, eso es lo que hay que intentar, si no se puede, pues se busca otra forma más sencilla).

... y programan con paintbrush!!!
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on October 05, 2011, 08:14:51 PM
¬¬

habra que estudiarlo...
(http://img641.imageshack.us/img641/2783/paintec.jpg)
Title: Re: let_me_alone(); para dos?
Post by: SplinterGU on October 05, 2011, 09:06:38 PM
Quote from: Drumpi on October 05, 2011, 07:31:54 PM
Los hombres de verdad no usan let_me_alone() (si no es para debug), identifican los procesos que existen y los matan uno a uno, porque saben quienes son (es decir, eso es lo que hay que intentar, si no se puede, pues se busca otra forma más sencilla).

... y programan con paintbrush!!!

estas loco, una de las mejores cosas es hacer let_me_alone...
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on October 05, 2011, 09:17:28 PM
ahora que lo comentas, si los procesos se pudieran poner un tipo para cuando le envie la señar de matarlos sea de ese tipo...

eso dá que pensar ¬¬
Title: Re: let_me_alone(); para dos?
Post by: SplinterGU on October 05, 2011, 09:41:48 PM
ya existe eso futu...

signal( type, senal )

por ejemplo.

signal( type enemigo, s_kill )
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on October 06, 2011, 08:18:23 AM
je je je, eso ya lo comenté en cierta ocasion...

entonces lo que hay que hacer es un solo proceso para varios ''enemigos'' por ejemplo donde cuando se quiera eliminar todos los enemigos se haga una señal s_kill y vamonos...


OJO, que no es una pregunta, jefe...
jijiji
Title: Re: let_me_alone(); para dos?
Post by: SplinterGU on October 06, 2011, 03:34:20 PM
entendi que no es una pregunta...

puede tener varios signal type...

signal type enemigos
signal type enemigos_voladores
signal type enemigos_rojos

etc.

no solo tener 1.
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on October 06, 2011, 04:02:37 PM
valgame dios!!!!!!!!!!!!!!!!
Title: Re: let_me_alone(); para dos?
Post by: SplinterGU on October 06, 2011, 08:45:36 PM
Quote from: Futublock on October 06, 2011, 04:02:37 PM
valgame dios!!!!!!!!!!!!!!!!

dije una burrada, cierto?
Title: Re: let_me_alone(); para dos?
Post by: Futu-block on October 06, 2011, 09:13:45 PM
no, son pensamientos en voz alta...
XD
Title: Re: let_me_alone(); para dos?
Post by: Drumpi on October 07, 2011, 09:57:09 PM
Método en el Echo para hacer pausa o matar a todos los procesos al acabar un nivel.

Se le pasa a la función que se llame la señal a ejecutar por todos los procesos (s_freeze para la pausa, s_wakeup para salir de la misma, o s_kill para eliminarlos).
Como vereis hay tres funciones, una por cada grupo distinto de procesos a los que se le pueden enviar una señal. Eso sí, ningun proceso usa hijos, o si los usa, no tienen el estado distinto del padre.

Reitero que usar let_me_alone() no es una solución elegante, y el 90% de las veces deja recursos sin descargar... salvo que abuses del ON EXIT (yo aun estoy demasiado arraigado a C básico ^^U).