ActionScript 3.0 :: Removing Unreferenced Objects From Memory

Oct 15, 2009

I'm trying to make a Starfield program as practice for ActionScript 3. I'm using a timer event in the document class to create Star objects which are defined by an object class connected to the movieclip Star in the Library. The object class has a timer as well, and at each tick it repositions itself a few points away and scales up, creating the image of a star shooting towards the sides of the stage. When the star has gone past the boundaries of the stage or when it has scaled to a certain size, it removes itself from the display list with the command: this.parent. removeChild(this);This removes the star from the display list just fine, however after that I can't get the star to set itself to null so that it will be removed from memory, and I'd like some suggestions on how to do this properly. An idea I had was to make a function in the document class that the child objects can call, something like this.parent.KillMe(this) which would give itself as a reference to the function, which could then use a local variable reference to set the child to null, removing it from memory. This all seems terribly complex, so I'm sure there's another way.

I haven't noticed a memory leak or slowdown, however, so I'm curious if objects without references that are removed from the display list are automatically removed? That could be both good and bad, as the object might want to add itself to the display list again at a later time; not in this Starfield program, but perhaps in another I write.

View 11 Replies


Similar Posts:


ActionScript 3.0 :: Removing Loaded Objects / Events From Player Memory?

May 31, 2010

Is this at all possible? I just finished re-building my entire portfolio site in AS3 because I can't change the frame rate for loaded content in AS2. Now I find out after completely rebuilding this thing that AS2 content gets stuck in Flash Player 9's memory and won't erase on Loader.unload. All my work from years back is in AS2.

View 0 Replies

ActionScript 3.0 :: Does Setting An Array Of Objects To Null Erase The Objects From Memory

Apr 27, 2010

I have an array of temporary objects created in a for loop. The objects are of type class "Tile", a class I created. However, it appears that whenever I create a lot of tiles in the for loop, the program slows down indefinitely.

While the array is whiped at a later trigger point, I am thinking that perhaps these Tile objects are not being erased from memory. They are being created on the fly in a for loop, and the array is being reset to "array = []".

Are the objects still in memory or are they cleaned up when the array is set to []?

View 3 Replies

ActionScript 3.0 :: Removing Things From Memory?

Mar 27, 2008

I'll try to explain the general operation of my program, and that might shed some light on my issue. I have a menu with 50 different small postcards. When one is chosen, the program zooms it up in order to fill the screen, populates some data which is unique to each postcard, and "flips" it so you can see the writing on the back. The postcard is a movieclip which imports a front image, 3 back images, and some XML text. There are some buttons on the "back" of the postcard to choose to look at a few images and text.When you choose to close the postcard, it flies away. I use the same movieclip for all 50 postcards, and just change the images and text that I load.

Once the postcard flies away, I want to remove it from memory. It won't happen with removeChild() as that keeps it there in case I want to reference it again I guess, and I have tried setting the postcard variable name to "null" without much success.I add listeners to the buttons on the postcard when I instantiate its class, so I am not sure if I have to remove them in order to get the garbage collector to deal with it. But, I also don't know what I don't know about removing things from memory. In one section of the Flash docs (Working with display object containers) it says:

"The removeChild() and removeChildAt() methods do not delete a display object instance entirely. They simply remove it from the child list of the container. The instance can still be referenced by another variable.(Use the delete operator to completely remove an object.)"And, at another place in the docs (the script reference about removeChild()) it says:

"Removes the specified child DisplayObject instance from the child list of the DisplayObjectContainer instance. The parent property of the removed child is set to null , and the object is garbage collected if no other references to the child exist. The index positions of any display objects above the child in the DisplayObjectContainer are decreased by 1.

View 6 Replies

ActionScript 3.0 :: Removing SWF From Memory After Deleting From DOM

Sep 29, 2011

I'm having a problem where I load my SWF (Advertisement) into the dom after an event happens in a flash game.  After viewing the ad, the SWF is removed with JavaScript and users continues to play, this continues several times without ever reloading the page.
 
The problem I am running into is in IE 8 & 9 performance of the game drops and frame rate becomes choppy after several ads are shown.  Each advertisment has a timer built in and my thought is that the ad is not being fully removed from memory hence causing a slowdown. 
 
Is there a way to ensure a full removal of the ad or at least a way to detect within the ad that it is no longer on the page & kill the timer?

View 1 Replies

ActionScript 3.0 :: Removing A MovieClip From Memory

Jan 11, 2011

I have a function called changeMovie which is supposed to load a new movie/swf into a already established container.I can get the new movie to load (all these movies have sound embedded in them) but I can not figure out how to get the old movieclip out of memory.I can foresee an instance of memory overload in my application down the line.I am using Flash CS3 with AS3.[code]As it stands now, I can get the new movie to play and be shown but the old movie clip still continues to play "in the background - along with its sound".

View 9 Replies

ActionScript 3.0 :: Removing Object From Memory?

Aug 5, 2011

I have this line

Code:
this.parent.removeChild(this);

So basicaly the object is removing it self from the parent object,but I still think that it exisits in memory and doing its backend job.How can I remove it completely from memory?

View 8 Replies

ActionScript 3.0 :: Removing Items From Memory Using Loop?

Feb 18, 2009

The following for loop removes children from their parent if they're in the display list. It works correctly, but I also want to remove each child from memory with the same loop.

View 1 Replies

ActionScript 3.0 :: Removing Stage Items From Memory

Apr 14, 2010

I am adding few items dynamically from the library to the stage by creating instances. If I remove them using removeChildAt() then the item gets removed from the display but exists in the memory. How can I remove this from memory?

View 2 Replies

Actionscript 3 :: Removing Parent Memory Used By All The Children?

Sep 17, 2010

I'm making a rather large flash project and so I'm concerned about memory usage. At the end of each section of the application I remove the overarching parent element that holds the content. Although this remove the parent, does this also free up the memory for each of the children contained within this, or should I run an iteration to remove those prior to removing the parent?

I'll give a little more explanation in-case I'm not expressing what I want:

addChild(movie1);
movie1.addChild(movie2);
movie1.addChild(movie3);
By using this code:
removeChild(movie1);

Does it remove movie2 and movie3 from memory or are they still stored, just unlinked?

View 3 Replies

ActionScript 3.0 :: Remove Something From The Stage Without Removing It From The Memory?

Sep 29, 2009

its possible to remove something from the stage without removing it from the memory. Ie not using removieChild(); Reason being: I want to replace an image inside a movieclip rather than add another image on top or remove the image and movieclip entirely.

View 2 Replies

ActionScript 3.0 :: Removing Array Contents From Memory?

Dec 2, 2009

I'm performing the following operation many times (sniped of code below). I'm creating a two dimension array whose overall size depends on each iteration the process takes.

myArray = new Array(); // initialize the array
myArray[0] = new Array(); // add new array to first index
myArray[1] = new Array(); // add new array to second index

Question is: When I need to recreate this sequence again, do I just perform the same operation (repeat the same 3-lines)? Or is there a way of freeing up resource first.

View 3 Replies

ActionScript 3.0 :: Removing Images From Memory In A Loop

Aug 14, 2009

I've made a script which loads in, at intervals, images in a sequence (image1.jpg, image2.jpg ). However I've being doing my nut as to how to remove the preceeding image from memory as looking a the Windows Task Manager, each image gets added again and again, accumulating memory usage. I've tried removeChild, and null; stuff, but to no avail.I want it to go through the 10 images, and with each step to the next image, remove the last one from memory.[code]

View 2 Replies

ActionScript 3.0 :: Removing Children Produces Memory Leaking?

Apr 22, 2009

I am having memory problems when adding & removing children. Here is a brief overview of what I'm doing:I'm ading children to a VBox component:the structure of the children is:

Code:
<mx:Canvas>
<mx:Image/>
<mx:Text/>

[code]....

All remove the children, BUT I am getting memory leaking, especially using the second method! If I don't add the TextField child to the UIComponent I don't seem to experience any memory problems!

View 2 Replies

ActionScript 3.0 :: Removing A Movie Clip Properly From Memory?

Jan 21, 2011

I am having a bit trouble removing a movieclip properly from memory.In the onComplete event I use this to add the swf content to my clip

[code]....

The removeChild is double here just for savty But the trace command from the clip I loaded continues to put somthing in my output window. So it still keeps running and it isn't even stoping.

View 4 Replies

ActionScript 3.0 :: Memory Doesn't Release When Removing MovieClips

Jul 8, 2009

The app is basically an animated character that sits on screen and moves around doing stupid little animations. Each animation (Talking, Dancing, Jumping, etc) is an individual Movie Clip made up of around 50 or so PNGs in sequence. I'm using CS3 to create the clips, and exported them as SWCs for use in Flex. When I addChild() the MovieClip to stage, memory usage increases, which makes sense. However when I use removeChild() on the same clip, and then add another clip, memory increases, and this goes on with every new clip... essentially leaving 10 clips in memory even if they aren't being played.

Now, first thing you are going to think is I've got a reference to the clip somewhere and it's not garbage collecting. Well, I'm using weak listeners everywhere, and I'm pretty sure I've killed every reference by NULLing out the objects. I understand Garbage Collection doesn't happen right away... but it never seems to happen. As a test, I wrote a really bare-bones app to attach and remove a clip to see if the memory ever frees. I've left the app running for a half hour after removing the clip from stage, and memory usage stays the same:

[Code]...

View 2 Replies

Find Unreferenced Code In Flex Builder?

Mar 22, 2010

We've got several Flex projects, one of which has just been refactored. I'm wondering if there's an easy way to tell which classes and functions (if any) aren't being used any more?

I've discovered that we've definitely got some unused code, because running ASDoc on the entire project reports some compilation errors which don't get reported by Flex Builder (implying that those classes aren't being used any more). I'm hoping to find a more robust and complete method, and preferably one which can work at function level too.

View 5 Replies

ActionScript 3.0 :: Remove Objects From Memory?

Feb 10, 2010

I have a class "Ball" which display graphical circle ball in random x&y axis and Ifade out it with Event.ENTER_FRAME and specify removeEventListener if it reach alpha<=0 .Now I made multiple object from "Ball" class. Now, In my stage it works nice but when I see my Computer Memory status. my current flash.exe is increasing memory rapidly. Is how to remove my unusual object from my Memory. So that it would not get hang.

View 2 Replies

ActionScript 3.0 :: Memory Used By Individual Objects?

Dec 14, 2010

Is there a way to find out how much memory a single object is used?

View 3 Replies

Actionscript 3 :: Remove Simple Objects From Memory?

Sep 9, 2010

I'm trying to remove simple objects from memory, but when I call removeChildren memory usage rose :/ And I don't why ? And how can I remove objects ?

[Code]...

View 2 Replies

ActionScript 3.0 :: Clean All Existing Objects From Memory

Nov 30, 2009

I tried to include a free photogallery based on as 3 in to a free flash template site. Now, if u click photogallery, the photogallery have to build up!

I have following problem: -If u click the photogallery a second time, it doesnt work correctly! (I think it has something to do with the existing objects from the first call!.. The second thing is, it uploads the pictures for the gallery 2 times. So i have 40 picture instead of 20 (20 of 20 are the same :/)....

I tried this but with no succes: (i tried to remove the objects with remove child...Its the last part of this code)....

Code:
/*
Created by Min Thu
http://www.flashmo.com
AS3 References and Credits

[Code]....

View 0 Replies

ActionScript 3.0 :: Remove Objects From Memory By Reference?

Dec 2, 2009

I am creating a generic button that will remove items created dynamically in a movie clip container from memory (not just from the display list).

To track which item the user has selected for deletion, I have a click function that stores the name of the clicked object in a variable called objName. I then store a reference to the object itself in another variable called targetObj. I can then easily remove the object from the stage like this[code]...

View 3 Replies

Do Objects That Are On Stage But Off Screen Also Affect Memory Upon Playback?

Nov 27, 2009

In my flash scene, I want to put several items off screen (to make things easier) which are going to rush through the scene (they are very big in size) but I worry that they might slow down the movie as it's playing.

But if I have things off the scene (out of view upon playback), do they affect the speed of the movie (affecting the memory and slowing things down)? To give you a better idea here is the scene: There is a vehicle moving quickly and the camera is facing the right side of the vehicle, so we can see the moving landscape behind the vehicle. I can either create a very very long landscape and movie it all one time (if having the long landscape off the screen does not affect the movie's speed), or I can create certain points of the movie where I ad and take away from the landscape.

View 1 Replies

Flash :: Memory Usage And Garbage Collection Of Objects?

Jun 1, 2011

I want to know about the Object type specifically when it comes to garbage collection in Flash.

I know that items will be ready for garbage collection in situations like this:

[Code]...

View 2 Replies

Flex :: Removing Flex DisplayObjects From View AND Memory Pool

Feb 15, 2011

There is a Flex app with 7 main views. And there is a memory issue when navigating between views.All these views were in a ViewStack, but due to some involving 3D objects I assumed it was too much to have it all in the display list. I'm now clearing all children from the stack and adding/removing them when needed. This gave a small performance increase, but still becomes unresponsive with use. The strange thing is, with this and the original method, the CPU climbs with use but eventually levels out somewhere. Now I'm creating new instances of each screen when they are navigated to and setting the previous variable to null. Now it looks like CPU is spiking when the view is created, but leveling out to something much much lower than it was. This felt like progress, but now the available memory keeps climbing where it wasn't before....

My understanding was calling remove child or remove all children would mark the object for deletion when the garbage collector next ran. I can't see any other references to the instance. My code is along the lines of [code]I have a function for each button to add a new instance like the above.The only thing I can see and feel silly asking but need confirmation, is each view extends a class called "Screen", this class contains a singleton reference to some core components.[code]Would this trick the garbage collector into thinking it was still needed? General advice on clearing Objects from the memory pool would awesome!!! I've never needed to analyze the Flash Player in such depth.I think it's an error with sound drivers, removing all sound and shes purring like a kitten. Works on my machine fine with windows XP, but not on the touch pad the application is crashing on with windows 7 (unsure of the drivers looking into them now) Now I'm thinking its not the drivers, tried 3 different versions, all with no improvement. I did discover the sound was fading in and out with the TweenLite lib. Doesn't look like there are any memory leaks in TweenLite as it works fine on other machines. Just the use of volumeEasingFunction seems to consume increasing amounts of CPU until it freaks out. It is crappy hardware running windows 7, which doesn't help.

View 1 Replies

ActionScript 3 :: Memory Management - Adding Custom Objects To Stage

Jul 3, 2010

My AS3 application basically does the following (pseudo code from main application class) 3 or 4 times by adding custom objects to stage:

_movieClipClassVariable = new MyCustomSpriteSubclass();
_movieClipClassVariable.addEventListener(MyEvents.READY, function(event:Event):void {
_hideLoading();
mcHolder.addChild(_movieClipClassVariable);});
_movieClipClassVariable.addEventListener(MouseEvent.CLICK, myClickHandler);
private function coverClickHandler(event:Event):void {
}

What is the right way to allow Garbage Collector to recycle _movieClipClassVariable after it is not necessary? Assign null to it? Remove all listeners? Use weak reference for listeners?

View 2 Replies

ActionScript 3.0 :: Check For Objects In Memory That Have Been Removed From A Display Object?

Nov 21, 2010

Anyone know if there's a way to check for objects in memory that have been removed from a display object but not set to null?

View 1 Replies

ActionScript 3.0 :: Removing Objects Without Using For Loop?

Jul 10, 2009

i am having a problem removing objects from the stage and their associated arrays. basically when a "shark" is added to stage i want all "cans" to be removed and i dont want any "cans" to be added until the shark has left.my problem comes as i dont want to keep using for loops as i already have two or three for "cans" alone and i heard thats not good for the code!

Code:
var canTimer:Timer=new Timer(2000);
canTimer.addEventListener(TimerEvent.TIMER, addCan);
canTimer.start();

[code]....

im not 100% sure were to put this in my code-i didnt really want to put it in a function of it's own as it would mean using another for loop?i get a output error when a shark is added like this:

Quote:

TypeError: Error #2007: Parameter child must be non-null.
at flash.display:isplayObjectContainer/contains()
at dolphinmoviegame_fla::MainTimeline/canHitTest()

even though all "cans" are removed.

View 1 Replies

ActionScript 3.0 :: Removing Various Objects From An Array?

Feb 23, 2009

I have a utility function:

function removeFromArray(item:Object, arr:Array):Object {
for(var i:uint = 0; i < arr.length; i++) {
if(item == arr

[Code]....

This function searches through an array and sees if an item exists in it, if it does, it removes it and returns a reference to that item.

This works fine for most things. But I just ran into a problem where I need to remove an array from an array.

so my array looks like this [ [item1a, item1b], [item2a, item2b] ]; and i need to remove [item1a, item1b] from it. But passing in the the array to remove and the full array to remove it from does not work because i guess of the casting to an object in the parameters list. Can the functionality i want be used? if so how?

View 1 Replies

Removing Objects From Stage In Flash CS4

Oct 15, 2009

I have a problem with this code:[code]There are two overlapping objects on my stage: character_mc and vanish_mc. As soon as i start the scene [Ctrl+Enter] vanish_mc is VISUALLY removed. But the code still sees a collision somehow. How can i Entirely remove the object vanish_mc?

View 7 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved