PDA

Ver la versión completa : Duda con load_fpg y unload_fpg.



Hokutoy
09/10/2009, 09:21
Buenas!
Tengo una duda con load_fpg y unload_fpg.
Dejando de banda lo lógico,ilógico o que no sea la mejor manera de hacer las cosas mi duda es la sigüiente.

Cargo un Fpg con:
PROTA=load_fpg("PROTA.fpg"); // --> FPG DE 500 KB

Si ahora, en un momento dado hago:
PROTA=load_fpg("FAKE.fpg"); // --> FPG DE 1 KB

Si NO hago un unload entre los dos pasos... al final la memoria reservada es de 1 Kb o de 501 Kb?

GRACIAS!

Aiken
09/10/2009, 09:37
pues dejando de lado lo logico no tiene respuesta.
por logica tendras reservada 501KB.

Aiken

PharaOnyx
09/10/2009, 10:01
Yo que no tengo ni idea de Fenix/Bennu pero sí de programación en general, diría que con ese código ocupas 501KB, dejas accesible 1KB (del segundo load_fpg) y pierdes para siempre memoria (los 500KB del primer load_fpg), puesto que estás machacando lo que parece ser el manejador del archivo (PROTA)

Saludos, Alex

hardyx
09/10/2009, 10:47
Lo que pierdes es el primer identificador que has cargado de 500 Kb, con lo cual no podrás liberarlo luego con unload_fpg(id).

chipan
09/10/2009, 12:12
Ocuparías 501Kb y "perderías" parte del acceso al primer fichero cargado (podrías seguir accediendo con el índice de carga del archivo pero no es recomendable ni muy exacto si se andan cargando y descargando cosas)

Hokutoy
09/10/2009, 12:17
Ok Gracias chicos. Esto explica muchas cosas.
Quería hacerlo facil pero veo que tendré que usar el unload (aunque siempre me da problemas).

EDIT:
Weno ya he arreglado el problema que tenía... hacia un unload sobre una id que no estaba declarada (o no contenía aún un fpg cargado en memoria) por lo que al valer 0 (imagino) me hacia un unload del primer fpg cargado en memoria... weno un lio tremendo hasta que al final he dado con la solucion.

PD: Como no me meta mucha prisa este finde no llego al concurso ni de broma jejeje