RE: [flexcoders] Memory issues ... garbage collection only running in IE (not FF or Safari)

2008-10-28 Thread Blake Barrett
e_baggg,
You're not the only one. We're experiencing very similar problems.
Our app just keeps gobbling memory until the browser crashes. We've had
to resort to calling dispose() explicitly on every mx:Image and bitmap
we ever instantiate, and explicitly calling removeAllChildren() on every
contaniner before navigating away from anything. Helps a little. I'm
going to look in to the link you mentioned. Maybe that will help us a
little more than it has for you (fingers crossed).
 
Let us all know if you find anything else out.
 
Blake



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of e_baggg
Sent: Tuesday, October 28, 2008 2:51 PM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Memory issues ... garbage collection only running
in IE (not FF or Safari)



So I have an app in production which after 10 minutes of usage began 
to perform EXTREMELY slow, and users had to restart the app. (Flex 3) 
Windows and Mac...all browsers. I did some Profiling and did not get 
far. Whenever I take a Memory Snapshot, gc() is forced and all my 
objects are correctly removed from memory. So why are they not gc()'d 
in normal runtime?? I know gc() only runs when new memory is requested 
and nothing is being drawn/rendered. Both seem to be OK on my side.

I have read extensively all the blogs and Adobe docs regarding this 
issue, including the event listener for ENTER_FRAME which calls 
System.gc() twice. (http://www.craftymind.com/2008/04/09/kick-
http://www.craftymind.com/2008/04/09/kick- 
starting-the-garbage-collector-in-actionscript-3-with-air/). This 
unfortunately did not work for me. 

To simplify, I created a simple app that adds and removes RichText 
fields. if I create 50 of them, then remove them all, then Add one 
back, that *should* force a gc() but it does not. The FF memory always 
stays high. I noticed in IE, minimizing the browser window causes a 
gc() and my memory drops to a much lower #.

Has anyone seen or come across this? B/c of this issue, we're pretty 
much going to lose our customers and try to wing a html/ajax app 
ASAP..so I'm scrambling to resolve this. 

Thanks in advance for any help. 

?xml version=1.0 encoding=utf-8?
mx:Application xmlns:mx=http://www.adobe.com/2006/mxml
http://www.adobe.com/2006/mxml  
creationComplete=init() layout=vertical 
mx:Script
![CDATA[
import mx.controls.RichTextEditor;

private function removeit():void
{
this.removeChildAt(2);
}

private function doit():void
{
var rte : RichTextEditor = new 
RichTextEditor();
rte.width=300;
rte.height=150;
this.addChild(rte);
}
]]
/mx:Script
mx:Button click=doit() label=Add/
mx:Button click=removeit() label=Remove/
/mx:Application



 


RE: [flexcoders] Memory issues ... garbage collection only running in IE (not FF or Safari)

2008-10-28 Thread Alex Harui
If your app creates lots of stuff, you'll create a high-water mark and GC won't 
run until you get back up near that high-water mark.  Images are known to easy 
ways to set that high-water mark pretty high.

In general, the answer is to re-use instead of re-create, and only create what 
you need when you need it.

-Alex

From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Blake 
Barrett
Sent: Tuesday, October 28, 2008 3:09 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] Memory issues ... garbage collection only running in 
IE (not FF or Safari)

e_baggg,
You're not the only one. We're experiencing very similar problems. Our app 
just keeps gobbling memory until the browser crashes. We've had to resort to 
calling dispose() explicitly on every mx:Image and bitmap we ever 
instantiate, and explicitly calling removeAllChildren() on every contaniner 
before navigating away from anything. Helps a little. I'm going to look in to 
the link you mentioned. Maybe that will help us a little more than it has for 
you (fingers crossed).

Let us all know if you find anything else out.

Blake


From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of e_baggg
Sent: Tuesday, October 28, 2008 2:51 PM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Memory issues ... garbage collection only running in IE 
(not FF or Safari)

So I have an app in production which after 10 minutes of usage began
to perform EXTREMELY slow, and users had to restart the app. (Flex 3)
Windows and Mac...all browsers. I did some Profiling and did not get
far. Whenever I take a Memory Snapshot, gc() is forced and all my
objects are correctly removed from memory. So why are they not gc()'d
in normal runtime?? I know gc() only runs when new memory is requested
and nothing is being drawn/rendered. Both seem to be OK on my side.

I have read extensively all the blogs and Adobe docs regarding this
issue, including the event listener for ENTER_FRAME which calls
System.gc() twice. (http://www.craftymind.com/2008/04/09/kick-
starting-the-garbage-collector-in-actionscript-3-with-air/). This
unfortunately did not work for me.

To simplify, I created a simple app that adds and removes RichText
fields. if I create 50 of them, then remove them all, then Add one
back, that *should* force a gc() but it does not. The FF memory always
stays high. I noticed in IE, minimizing the browser window causes a
gc() and my memory drops to a much lower #.

Has anyone seen or come across this? B/c of this issue, we're pretty
much going to lose our customers and try to wing a html/ajax app
ASAP..so I'm scrambling to resolve this.

Thanks in advance for any help.

?xml version=1.0 encoding=utf-8?
mx:Application xmlns:mx=http://www.adobe.com/2006/mxml;
creationComplete=init() layout=vertical 
mx:Script
![CDATA[
import mx.controls.RichTextEditor;

private function removeit():void
{
this.removeChildAt(2);
}

private function doit():void
{
var rte : RichTextEditor = new
RichTextEditor();
rte.width=300;
rte.height=150;
this.addChild(rte);
}
]]
/mx:Script
mx:Button click=doit() label=Add/
mx:Button click=removeit() label=Remove/
/mx:Application



RE: [flexcoders] memory issues / garbage collection?

2006-12-11 Thread Kenneth Sutherland
Thanks for the information, but it would be handy if there was some sort
of in depth tutorial on this.  I've seen a couple of macromedia
presentations on various flex topics and found them useful, and one of
them mentioned in passing memory issues (but only for about 30 seconds).
If there was one that was specifically on memory issues, weak bindings
etc then that would be great.  If such a presentation doesn't exist then
I'd recommend to macromedia that they create one.  It's all very well
creating nice flashy web apps, but if they end up slowing down the host
machine after a few minutes of use due to sloppy weak code then that's
no use.  

There does seem to be a lack of in-depth books/information at the
moment.  I've had a look at Flex 2 training from the source and it's a
bit fluffy and lacking any depth.  Good book in that it covers the
basics but that's all it does.

 

So although the updated photoviewer code will probably solve my issue
when I get to compare my code with the new code, I'd like to be able to
solve it myself by learning more about weak references and debugging the
app so that I can find the memory leak myself.  

 

Cheers Kenneth.

 

 

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Matt Chotin
Sent: 08 December 2006 05:33
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] memory issues / garbage collection?

 

Actually I forgot, there was a memory leak still found due to an event
listener.  We've fixed it in the 2.0.1 version of the sample (I didn't
do it, the bug note said we made an event listener weak to address it).
So it was my fault :-)

 

Matt

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Matt Chotin
Sent: Thursday, December 07, 2006 9:23 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] memory issues / garbage collection?

 

When we wrote the PhotoViewer there were some memory leaks but I thought
we got them all.  If you keep an eye on the task manager it should go
back down after a minute or two.  Of course if by playing with the app
you mean you edited it, I absolve myself of responsibility, even if all
you did was change a color ;-)

 

Matt

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kelly
Sent: Thursday, December 07, 2006 12:20 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] memory issues / garbage collection?

 

I was having this problem when I built the map component for
www.pikeo.com http://www.pikeo.com/ 

You have to make sure that all references to an object are gone before
it will get garbage collected.

Once all references to the object are gone it will get collected within
5 seconds usually.

--Kelly



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kenneth Sutherland
Sent: Thursday, December 07, 2006 1:18 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] memory issues / garbage collection?

 

I've been playing around with the photoviewer example (from the adobe
site) quite a bit in my spare time and I've noticed that when I open up
the taskmanager and I run the application that the memory consumption
just keeps on going up!  Each time I look at another photo, up it goes.

So I'm looking for any hints, tips, tutorials or books that will help to
get flex to garbage collect all of the old memory that the app no longer
needs.

 

Thanks.

 



Re: [flexcoders] memory issues / garbage collection?

2006-12-07 Thread Dmitry Kochetov

Hello,

Maybe in that app, unused BitmapData not disposing. And they eats your 
memory.

When you working with images just dispose thas Bitmaps what u no longer 
need.


Kenneth Sutherland wrote:

 I’ve been playing around with the photoviewer example (from the adobe 
 site) quite a bit in my spare time and I’ve noticed that when I open 
 up the taskmanager and I run the application that the memory 
 consumption just keeps on going up! Each time I look at another photo, 
 up it goes.

 So I’m looking for any hints, tips, tutorials or books that will help 
 to get flex to garbage collect all of the old memory that the app no 
 longer needs.

 Thanks.

 _



--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

* To visit your group on the web, go to:
http://groups.yahoo.com/group/flexcoders/

* Your email settings:
Individual Email | Traditional

* To change settings online go to:
http://groups.yahoo.com/group/flexcoders/join
(Yahoo! ID required)

* To change settings via email:
mailto:[EMAIL PROTECTED] 
mailto:[EMAIL PROTECTED]

* To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]

* Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
 


RE: [flexcoders] memory issues / garbage collection?

2006-12-07 Thread Kelly
I was having this problem when I built the map component for www.pikeo.com
http://www.pikeo.com/ 

 

You have to make sure that all references to an object are gone before it
will get garbage collected.

 

Once all references to the object are gone it will get collected within 5
seconds usually.

 

 

 

 

--Kelly

 

 

 

 

  _  

From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kenneth Sutherland
Sent: Thursday, December 07, 2006 1:18 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] memory issues / garbage collection?

 

I've been playing around with the photoviewer example (from the adobe site)
quite a bit in my spare time and I've noticed that when I open up the
taskmanager and I run the application that the memory consumption just keeps
on going up!  Each time I look at another photo, up it goes.

So I'm looking for any hints, tips, tutorials or books that will help to get
flex to garbage collect all of the old memory that the app no longer needs.

 

Thanks.

 



RE: [flexcoders] memory issues / garbage collection?

2006-12-07 Thread Matt Chotin
When we wrote the PhotoViewer there were some memory leaks but I thought
we got them all.  If you keep an eye on the task manager it should go
back down after a minute or two.  Of course if by playing with the app
you mean you edited it, I absolve myself of responsibility, even if all
you did was change a color ;-)

 

Matt

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kelly
Sent: Thursday, December 07, 2006 12:20 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] memory issues / garbage collection?

 

I was having this problem when I built the map component for
www.pikeo.com http://www.pikeo.com/ 

You have to make sure that all references to an object are gone before
it will get garbage collected.

Once all references to the object are gone it will get collected within
5 seconds usually.

--Kelly



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kenneth Sutherland
Sent: Thursday, December 07, 2006 1:18 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] memory issues / garbage collection?

 

I've been playing around with the photoviewer example (from the adobe
site) quite a bit in my spare time and I've noticed that when I open up
the taskmanager and I run the application that the memory consumption
just keeps on going up!  Each time I look at another photo, up it goes.

So I'm looking for any hints, tips, tutorials or books that will help to
get flex to garbage collect all of the old memory that the app no longer
needs.

 

Thanks.

 



RE: [flexcoders] memory issues / garbage collection?

2006-12-07 Thread Matt Chotin
Actually I forgot, there was a memory leak still found due to an event
listener.  We've fixed it in the 2.0.1 version of the sample (I didn't
do it, the bug note said we made an event listener weak to address it).
So it was my fault :-)

 

Matt

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Matt Chotin
Sent: Thursday, December 07, 2006 9:23 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] memory issues / garbage collection?

 

When we wrote the PhotoViewer there were some memory leaks but I thought
we got them all.  If you keep an eye on the task manager it should go
back down after a minute or two.  Of course if by playing with the app
you mean you edited it, I absolve myself of responsibility, even if all
you did was change a color ;-)

 

Matt

 



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kelly
Sent: Thursday, December 07, 2006 12:20 PM
To: flexcoders@yahoogroups.com
Subject: RE: [flexcoders] memory issues / garbage collection?

 

I was having this problem when I built the map component for
www.pikeo.com http://www.pikeo.com/ 

You have to make sure that all references to an object are gone before
it will get garbage collected.

Once all references to the object are gone it will get collected within
5 seconds usually.

--Kelly



From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of Kenneth Sutherland
Sent: Thursday, December 07, 2006 1:18 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] memory issues / garbage collection?

 

I've been playing around with the photoviewer example (from the adobe
site) quite a bit in my spare time and I've noticed that when I open up
the taskmanager and I run the application that the memory consumption
just keeps on going up!  Each time I look at another photo, up it goes.

So I'm looking for any hints, tips, tutorials or books that will help to
get flex to garbage collect all of the old memory that the app no longer
needs.

 

Thanks.