<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: unload you module</title>
	<atom:link href="http://olehfilipchuk.com/2009/07/24/unload-you-module/feed/" rel="self" type="application/rss+xml" />
	<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/</link>
	<description>another technology blog</description>
	<lastBuildDate>Tue, 18 Aug 2009 00:38:42 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: handoyo</title>
		<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/#comment-16</link>
		<dc:creator>handoyo</dc:creator>
		<pubDate>Tue, 18 Aug 2009 00:38:42 +0000</pubDate>
		<guid isPermaLink="false">http://olegfilipchuk.com/?p=46#comment-16</guid>
		<description>Thanks Oleg,by the way,are there any approach to handle the memory leak at the moment?Thanks...</description>
		<content:encoded><![CDATA[<p>Thanks Oleg,by the way,are there any approach to handle the memory leak at the moment?Thanks&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Oleg</title>
		<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/#comment-15</link>
		<dc:creator>Oleg</dc:creator>
		<pubDate>Mon, 17 Aug 2009 18:15:01 +0000</pubDate>
		<guid isPermaLink="false">http://olegfilipchuk.com/?p=46#comment-15</guid>
		<description>Alex, thank you for the comment. It will be great to have some guidance how to work with modules in Flex 3 and Flex 4.
Modules in flex is great way to create enterprise level application. But there are still too many problems to make it really usable especially in terms of rapid application development. From my colleagues&#039; and my experience I can tell you that making sure that module is unloaded from memory and fully garbage collected is a very time consuming and frustrating experience. There are multiple issues that stop modules from being garbage collected still exist in both versions of SDK. While working on huge financial flex application we&#039;ve found out that using inline styles, inline effects, focusable components, charting components and popups in modules  leads to memory problems in most of the cases. Sometimes it&#039;s happening due to running effects, sometimes due to not unregistered event listeners etc.
It would be really useful and very appreciated if you guys will implement native support module load/unload workflow not in Flex SDK but in Flash Player.

Regards,
Oleg</description>
		<content:encoded><![CDATA[<p>Alex, thank you for the comment. It will be great to have some guidance how to work with modules in Flex 3 and Flex 4.<br />
Modules in flex is great way to create enterprise level application. But there are still too many problems to make it really usable especially in terms of rapid application development. From my colleagues&#8217; and my experience I can tell you that making sure that module is unloaded from memory and fully garbage collected is a very time consuming and frustrating experience. There are multiple issues that stop modules from being garbage collected still exist in both versions of SDK. While working on huge financial flex application we&#8217;ve found out that using inline styles, inline effects, focusable components, charting components and popups in modules  leads to memory problems in most of the cases. Sometimes it&#8217;s happening due to running effects, sometimes due to not unregistered event listeners etc.<br />
It would be really useful and very appreciated if you guys will implement native support module load/unload workflow not in Flex SDK but in Flash Player.</p>
<p>Regards,<br />
Oleg</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Oleg</title>
		<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/#comment-14</link>
		<dc:creator>Oleg</dc:creator>
		<pubDate>Mon, 17 Aug 2009 18:00:43 +0000</pubDate>
		<guid isPermaLink="false">http://olegfilipchuk.com/?p=46#comment-14</guid>
		<description>Hi Handoyo,
you may easily identify memory leaks if you profile your application if Flex/Flash Builder using memory snapshots. Once you launch your application you may take memory snapshot( before loading module), then load your module, do some module&#039;s workflow, and unload module. After unloading of the module you can take another memory snapshot and compare with previously taken snapshot. If you can see some instances that supposed to be destroyed - you definitely have some memory problems as some instances not garbage collected, that potentially can lead to serious memory issues.  Using task manager is good way to identify possible memory leaks as well but mostly to answer the general question if you have it or not. I&#039;d recommend you to use first approach.</description>
		<content:encoded><![CDATA[<p>Hi Handoyo,<br />
you may easily identify memory leaks if you profile your application if Flex/Flash Builder using memory snapshots. Once you launch your application you may take memory snapshot( before loading module), then load your module, do some module&#8217;s workflow, and unload module. After unloading of the module you can take another memory snapshot and compare with previously taken snapshot. If you can see some instances that supposed to be destroyed &#8211; you definitely have some memory problems as some instances not garbage collected, that potentially can lead to serious memory issues.  Using task manager is good way to identify possible memory leaks as well but mostly to answer the general question if you have it or not. I&#8217;d recommend you to use first approach.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: handoyo</title>
		<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/#comment-13</link>
		<dc:creator>handoyo</dc:creator>
		<pubDate>Mon, 17 Aug 2009 14:17:48 +0000</pubDate>
		<guid isPermaLink="false">http://olegfilipchuk.com/?p=46#comment-13</guid>
		<description>Hi Oleg,i want to ask.How to check if there are memory leak?Is it by looking at the performance in windows task manager?Thanks..</description>
		<content:encoded><![CDATA[<p>Hi Oleg,i want to ask.How to check if there are memory leak?Is it by looking at the performance in windows task manager?Thanks..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Harui</title>
		<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/#comment-12</link>
		<dc:creator>Alex Harui</dc:creator>
		<pubDate>Fri, 07 Aug 2009 06:41:57 +0000</pubDate>
		<guid isPermaLink="false">http://olegfilipchuk.com/?p=46#comment-12</guid>
		<description>When the module is removed from the display list, the FocusManager will remove those objects from the focusableCandidates.  There could still be some bug in there, but it has cleaned up focusableCandidates successfully in all leak investigations so far.

It is true that the last focused item will be referenced by the FocusManager, but a good application will set focus somewhere else and that will free that reference.

But I will say that we have seen that the Flash Player also caches the last focused object and even if you move focus somewhere else, it takes several other tabs and mouse clicks before it releases that object.  But so far we&#039;ve seen that it does release it.

I&#039;m working on a summary of module unloading issues that will be posted on my blog soon.</description>
		<content:encoded><![CDATA[<p>When the module is removed from the display list, the FocusManager will remove those objects from the focusableCandidates.  There could still be some bug in there, but it has cleaned up focusableCandidates successfully in all leak investigations so far.</p>
<p>It is true that the last focused item will be referenced by the FocusManager, but a good application will set focus somewhere else and that will free that reference.</p>
<p>But I will say that we have seen that the Flash Player also caches the last focused object and even if you move focus somewhere else, it takes several other tabs and mouse clicks before it releases that object.  But so far we&#8217;ve seen that it does release it.</p>
<p>I&#8217;m working on a summary of module unloading issues that will be posted on my blog soon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kenny Yates</title>
		<link>http://olehfilipchuk.com/2009/07/24/unload-you-module/#comment-11</link>
		<dc:creator>Kenny Yates</dc:creator>
		<pubDate>Sun, 26 Jul 2009 16:02:29 +0000</pubDate>
		<guid isPermaLink="false">http://olegfilipchuk.com/?p=46#comment-11</guid>
		<description>Oleg,

Thanks for this article.
Although my client&#039;s app architecture rarely requires modules, currently one of them does.

We will make adjustments using FocusManager to set focus to a field
on the &quot;main&quot; screen before unloading the currently loaded module.

Kenny Yates
http://truitgroup.com/flexgenie</description>
		<content:encoded><![CDATA[<p>Oleg,</p>
<p>Thanks for this article.<br />
Although my client&#8217;s app architecture rarely requires modules, currently one of them does.</p>
<p>We will make adjustments using FocusManager to set focus to a field<br />
on the &#8220;main&#8221; screen before unloading the currently loaded module.</p>
<p>Kenny Yates<br />
<a href="http://truitgroup.com/flexgenie" rel="nofollow">http://truitgroup.com/flexgenie</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
