Google Groups Home
Help | Sign in
consumo de memoria
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  5 messages - Collapse all
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
Ernesto Quiñones  
View profile
 More options May 17, 6:19 pm
From: "Ernesto Quiñones" <ernes...@gmail.com>
Date: Sat, 17 May 2008 17:19:55 -0500
Local: Sat, May 17 2008 6:19 pm
Subject: consumo de memoria
Amigos, tengo una aplicación mas o menos con algo de 30 interfases,
todo va bien, el problema es que hoy probando todas las opciones del
sistema algunas que funcionan sin problema dejaron de aparecer,
comence a probar una por una y me salio este mensaje :

l error: Allowed memory size of 50331648 bytes exhausted (tried to
allocate 1834917 bytes) in /var/www/p4a3/p4a/objects/p4a.php on line
535

mi php esta configurado en 32mb, lo subi a 48 y abri un poco mas de
pantallas hasta que salio este mensaje, no quisiera tener que poner
64mb porque entonces si tuviera muchos usuarios concurrentes , alguien
sabe alguna manera de liberar memoria o que se consuma solo la
necesaria para la mascara visualizada en ese instante, al parecer p4a
levanta todas las que vas abriendo a memoria

saludos

--
Inscribete en las listas de APESOL
http://www.apesol.org/listas.php

Visita
http://www.eqsoft.net
Manuales, noticias, foros, etc.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Juan Manuel Castro  
View profile
 More options May 17, 7:46 pm
From: "Juan Manuel Castro" <juanmanuel.cas...@gmail.com>
Date: Sat, 17 May 2008 20:46:39 -0300
Local: Sat, May 17 2008 7:46 pm
Subject: Re: [p4aenespanol:75] consumo de memoria

Ernesto:

En algun momento tuve inconvenientes con interfaces que leian tablas con
1.500.000 registros y filtros de 20 campos.-
Lo que comentas es real. Lo que usaba en esos momentos era P4a Version
2.2.3.- Lo que hice fue reescribir la accion exit de la toolbar que ponia en
esas mascaras, en el metodo lo que hace es hacer un destroy de la mascara en
vez de hacer un Show de la mascara previa.
Se podria probar reemplazando en p4a/objects/widgets/toolbars/actions.php en
la public function setMask(P4A_Mask $mask) la linea:

$this->buttons->exit->implement('onClick', $mask, 'showPrevMask');
por
$this->buttons->exit->implement('onClick', $mask, 'showPrevMask(true)');

Fijate en p4a/objects/widgets/toolbars/actions.php

    public function setMask(P4A_Mask $mask)
    {
        $this->buttons->save->implement('onClick', $mask, 'saveRow');
        $this->buttons->cancel->implement('onClick', $mask, 'reloadRow');
        $this->buttons->exit->implement('onClick', $mask, 'showPrevMask');<
--- Se implementa en p4a/objects/p4a.php
        return $this;
    }

Fijate en p4a/objects/p4a.php
    public function showPrevMask($destroy = false)
    {
        if ($destroy === true) {
            $this->active_mask->destroy();
         } elseif ($this->active_mask->isPopup()) {
            $this->active_mask->isPopup(false);
            $this->_redesign_whole_mask = true;
        }

         if (sizeof($this->masks_history) > 0) {
            $mask_name = array_pop($this->masks_history);
            $this->setActiveMask($mask_name);
        }

Espero te sea util, saludos y contame si te sirvio.-
--
Juan Manuel Castro
D.N.I. 26.852.693
Solis 168 - C.P. 2705
Rojas - Buenos Aires
Tel. 54 - 02474-15-56-4189


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ernesto Quiñones  
View profile
 More options May 19, 10:07 pm
From: "Ernesto Quiñones" <ernes...@gmail.com>
Date: Mon, 19 May 2008 21:07:19 -0500
Local: Mon, May 19 2008 10:07 pm
Subject: Re: [p4aenespanol:76] Re: consumo de memoria
Hola Juan
gracias por la idea, estuve evaluando si retocar el codigo de p4a con
lo que mencionas y decidi que mejor no, esto llevaría a que luego
tuviera que estar pendiente de cambios para actualizar la version de
p4a y preferi descarte eso

pero la idea de hacer destroy a la mascara la aplique poneidnola en el
codigo que lanza las interfaces desde mi menu y si que a funcionado
osea hago esto

//defino mi menu
$this->menu->addItem("seguridad", "Seguridad");
$this->menu->items->seguridad->addItem("usuarios","Usuarios");
$this->menu->items->seguridad->addItem("accesos","Accesos");
$this->menu->items->seguridad->addItem("clave","Cambio de clave");

$this->intercept($this->menu->items->seguridad->items->usuarios,"onClick",
"menuClick");
$this->intercept($this->menu->items->seguridad->items->accesos,"onClick",
"menuClick");
$this->intercept($this->menu->items->seguridad->items->clave,"onClick",
"menuClick");

//lanzo la opcion seleccionada
function menuClick()    {
    $this->active_mask->destroy(); <-- hago destroy de la actual antes
de lanzar la nueva
    $this->openMask($this->active_object->getName());

}

y va de pelos, baje el consumo de memoria de php de 48mb a 32mb y todo
va suave.....el problema de ponerlo en el boton de salida de lasi
nterfaces es que los usuarios simplemente NO lo usan asi que en cada
lecutra de mascara asegurandome de matar la anterior va bien, e
habierrto todas mis interfaces en orden a ver en que momento colapsa y
nada todo bien

gracias por la ayuda
saludos

El día 17 de mayo de 2008 18:46, Juan Manuel Castro
<juanmanuel.cas...@gmail.com> escribió:

--
Inscribete en las listas de APESOL
http://www.apesol.org/listas.php

Visita
http://www.eqsoft.net
Manuales, noticias, foros, etc.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Juan Manuel Castro  
View profile
 More options May 20, 7:56 am
From: "Juan Manuel Castro" <juanmanuel.cas...@gmail.com>
Date: Tue, 20 May 2008 08:56:44 -0300
Local: Tues, May 20 2008 7:56 am
Subject: Re: [p4aenespanol:78] Re: consumo de memoria

Ernesto:

No hace falta modificar el codigo de p4a, solo tendria que crear una toolbar
que extienda de P4A_Full_Toolbar, es lo bueno de trabajar con POO, pero
bueno si con lo que hiciste alcanza para solucionar tu inconveniente,
bienvenido sea.-

Saludos, ;-) .-

--
Juan Manuel Castro
D.N.I. 26.852.693
Solis 168 - C.P. 2705
Rojas - Buenos Aires
Tel. 54 - 02474-15-56-4189


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ernesto Quiñones  
View profile
 More options May 20, 7:17 pm
From: "Ernesto Quiñones" <ernes...@gmail.com>
Date: Tue, 20 May 2008 18:17:42 -0500
Local: Tues, May 20 2008 7:17 pm
Subject: Re: [p4aenespanol:79] Re: consumo de memoria
plop, no se me ocurrio eso de crear una nueva herencia, bueno en todo
caso la otra solución tambien sirve

muchas gracias por darle la idea
saludos

El día 20 de mayo de 2008 6:56, Juan Manuel Castro
<juanmanuel.cas...@gmail.com> escribió:

--
Inscribete en las listas de APESOL
http://www.apesol.org/listas.php

Visita
http://www.eqsoft.net
Manuales, noticias, foros, etc.


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2008 Google