플렉스 어레이 콜렉션이 많은 양의 데이터 (예 : 2,00,000 개의 새로운 참조 된 오브젝트)로 처리 될 때 플렉스 클라이언트 브라우저의 메모리가 20MB를 소비합니다. 이 초과 20MB는 객체에 정의 된 변수와 독립적입니다. 자세한 예가 아래에 나와 있습니다.큰 데이터를 사용하는 플렉스 플렉스 클라이언트
var list:ArrayCollection = new ArrayCollection;
for(var i:int = 0;i<200000;i++)
{
var obj:Object = new Object;
list.add(obj);
}
위의 코드를 실행하면 플렉스 클라이언트 브라우저 메모리가 20MB 증가합니다. 다른 시나리오의 경우 배열 객체 컬렉션에 액션 스크립트 객체를 추가하려고 시도했습니다. 액션 스크립트 객체는 아래에 정의되어 있습니다.
public class Sample
{
public var id:int;
public var age:int;
public Sample()
{
}
}
200000 개의 샘플 클래스를 배열 컬렉션에 추가 할 때 여전히 20MB의 메모리 누출이있었습니다.
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);
}
플렉스 arrayList와 배열에 샘플 객체를 추가하려고했지만 문제가 여전히 지속됩니다. 플렉스가이 초과 메모리를 어디에 사용하는지 설명 할 수 있습니까?
왜 '누출'이라고 부릅니까? – ethrbunny