flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Clint M <cmod...@gmail.com>
Subject Re: massive memory leak in Flex
Date Fri, 03 Mar 2017 00:07:17 GMT
databinding is static at the application level… at least the way you're
doing it via curly braces… and the renderers will leak

try using this in the item renderer instead of text="{data}" and see if
that fixes the problem :

override public function set data(value:Object):void {
  mylabelId.text = data
}

On Thu, Mar 2, 2017 at 3:50 PM, Jason Taylor <jason@dedoose.com> wrote:

> This is all the code needed to cause it, and no it does not appear to
> stop, though I will need to run it for awhile to blow all my memory in this
> comp.
>
>
> <?xml version="1.0"?>
> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
> xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="
> OnCreationComplete(event)">
>     <s:List width="100%" height="100%" id="list"/>
>     <fx:Script><![CDATA[
>         import mx.collections.ArrayCollection;
>         import mx.events.FlexEvent;
>
>         private var _bindTimer:Timer;
>
>         private function OnCreationComplete(event:FlexEvent):void
>         {
>             _bindTimer = new Timer(500);
>             _bindTimer.addEventListener(TimerEvent.TIMER,
> OnBindTimerTick, false, 0, true);
>             _bindTimer.start();
>         }
>
>         private function OnBindTimerTick(event:TimerEvent):void
>         {
>             BindData();
>         }
>
>         private function BindData():void
>         {
>             var items:Array = [];
>             for (var i:uint = 0; i < 100; i++)
>             {
>                 items.push(GenerateRandomString(100));
>             }
>             list.dataProvider = null;
>             list.dataProvider = new ArrayCollection(items);
>         }
>
>         private function GenerateRandomString(strlen:Number):String
>         {
>             var chars:String = "abcdefghijklmnopqrstuvwxyzABCD
> EFGHIJKLMNOPQRSTUVWXYZ0123456789";
>             var num_chars:Number = chars.length - 1;
>             var randomChar:String = "";
>
>             for (var i:Number = 0; i < strlen; i++)
>             {
>                 randomChar += chars.charAt(Math.floor(Math.random() *
> num_chars));
>             }
>             return randomChar;
>         }
>         ]]></fx:Script>
> </s:Application>
>
>
>
> -----Original Message-----
> From: Alex Harui [mailto:aharui@adobe.com]
> Sent: Thursday, March 02, 2017 3:47 PM
> To: dev@flex.apache.org
> Subject: Re: massive memory leak in Flex
>
> Jason, we aren't seeing all of the code.  Can you put all of the code in a
> JIRA issue?
>
> There is a notion of outrunning GC.  And also memory fragmentation.  How
> high does memory go?  Does it cap out or will it blow up for lack of memory
> at some point?
>
> Thanks,
> -Alex
>
> On 3/2/17, 3:39 PM, "Jason Taylor" <jason@dedoose.com> wrote:
>
> >yeah you can remove that, right now mine is just
> >
> ><?xml version="1.0"?>
> ><s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
> >xmlns:s="library://ns.adobe.com/flex/spark"
> >                xmlns:Core="CoreClasses.*">
> >    <Core:MyLabel width="100%" height="100%" text="{data}"/>
> ></s:ItemRenderer>
> >
> >where MyLabel is a copy of s:label so I can make changes and try to
> >figure out where the hell this is coming from, appears to be deep in
> >TLF
> >
> >-----Original Message-----
> >From: Justin Mclean [mailto:justin@classsoftware.com]
> >Sent: Thursday, March 02, 2017 3:38 PM
> >To: dev@flex.apache.org
> >Subject: Re: massive memory leak in Flex
> >
> >Hi,
> >
> >What's the code for your TestItemRenderer? If you remove that does it
> >act the same?
> >
> >Thanks,
> >Justin
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message