Click here to Skip to main content
15,881,715 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
When flex array collection is handled with large amount of data for example 2,00,000 new referenced objects the memory in flex client browser shoots up 20MB. This excess 20MB is independent of the variables defined in the object. An detailed example is illustrated below.


var list:ArrayCollection =  new  ArrayCollection;
	for(var i:int = 0;i<200000;i++)
	{
		var obj:Object = new Object;
		list.add(obj);

	}
On executing the above code there was 20MB increase in flex client browser memory. For a different scenario i tried adding an action script object into the array collection. The action script object is defined below.

public class Sample
{
    public var id:int;
    public var age:int;
    public Sample()
    {
    }

}


On adding 200000 Sample class into a array collection there was still 20MB memory leak.

var list:ArrayCollection =  new  ArrayCollection;
for(var i:int = 0;i<200000;i++)
{
    var obj:Sample = new Sample;
    obj.id= i;
    onj.age = 20;
    list.add(obj);

}


I even tried adding 200000 Sample Objects into flex arrayList and array but the problem still persists. Can someone explain on where this excess memory is consumed by flex?
Posted
Updated 24-Feb-13 2:01am
v2
Comments
YvesDaoust 19-Jun-13 8:47am    
Where is the problem ? You allocate 200,000 objects each 100 bytes in size don't you ?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900