Garbage Collection Advice
Within the flash.system.System
class is a new method called pauseForGCIfCollectionImminent()
. The method accepts a single argument that determines the desired imminence value. This optional value must be a Number
between 0 and 1, where lower values indicate a less intense need for a garbage collection sweep to occur. Using this method, a developer can advise the garbage collector to begin performing its tasks at a time when it is convenient to do so.
In the example below, we create a small “game” with two states. One of these states represents a play level which the user would interact with and is a timed level. The second state represents the paused time between levels, in which the user is provided with a chance to reflect upon their achievements and prepare for another level of play. With System.pauseForGCIfCollectionImminent()
invoked during the proper time, a developer can advise the garbage collector to perform its actions at the best possible time.
package { import flash.display.Sprite; import flash.events.Event; import flash.events.TimerEvent; import flash.system.System; import flash.text.TextField; import flash.text.TextFormat; import flash.utils.Timer; [SWF(width="600", height="500", backgroundColor="#CCCCCC")] public class GCAdvice extends Sprite { private var traceField:TextField; private var stateName:String; private var levelTimer:Timer; private var msg:String; public function GCAdvice() { generateDisplayObjects(); performOperations(); } protected ...
Get What's New in Adobe AIR 3 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.