Flash - Clarifications Regarding Weak References In Listeners?

Aug 29, 2011

I understand how weak references work, but I am bit confused regarding it's use in actionscript event listeners. Consider the example below:

public class Rectangle extends MovieClip {
public function Rectangle() {
var screen:Shape=new Shape();

[code]...

If the Rectangle object has no other references, then it is a candidate for garbage collection, but since there is an event listener within the object, the event dispatcher holds a reference to the object, even though there are no other references to the object(other than the one held by the event listener). Hence it is prevented from being garbage collected. Is this the reason why weak event listeners are prescribed? Is the flash player so naive that, it cannot figure out that the event listener is defined within the same object?

View 1 Replies


Similar Posts:


ActionScript 3.0 :: Not Use Weak References By Default?

Dec 12, 2009

The default value for weakReference in the call to addEventListener() is false. Many memory issues can be resolved by using weakReferences; in fact, some industry experts "strongly recommend always using weak references with listeners".If this is the case, can someone provide me with a good reason why weakReference defaults to true? (Note that I'm not asking why someone would ever want a listener that is not a weakReference, but rather why weakReference=false is the default)

View 2 Replies

ActionScript 3.0 :: Weak References On Loader On Mac?

Jan 12, 2010

I was having a weird problem on my Mac when creating a loader.

PHP Code:
var myUrlRequestURLRequest URLRequest(imageurl);myImageLoader Loader();myImageLoader.contentLoaderInfo.addEventListener(Event.INIT, imageInitHandler, false, 

[code].....

View 0 Replies

ActionScript 3.0 :: Why Does Not Use Weak References By Default

Dec 11, 2009

The default value for weakReference in the call to addEventListener() is false. Many memory issues can be resolved by using weakReferences; in fact, some industry experts "strongly recommend always using weak references with listeners".If this is the case, can someone provide me with a good reason why weakReference defaults to true? (Note that I'm not asking why someone would ever want a listener that is not a weakReference, but rather why weakReference=false is the default)

View 4 Replies

ActionScript 3 :: Weak Listener References Not Appropriate During Initialization?

Apr 19, 2010

As I currently understand, if an event listener is added to an object with useWeakReference set to true, then it is eligible for garbage collection and will be removed if and when the garbage collection does a sweep.

public function myCustomSpriteClass() //constructor {
this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownListener, false, 0, true);
this.addEventListener(MouseEvent.MOUSE_UP, mouseUpListener, false, 0, true);
}

In this case, is it not appropriate to initialize an object with weak references event listeners, incase the garbage collector does activate a sweep removing the objects event listeners since they were added during initialization of the object? In this case, would it only be appropriate to create a type of deallocate() method which removes the event listeners before the object is nullified?

View 1 Replies

ActionScript 3.0 :: Weak References Can Be Used For Memory Optimization?

Mar 5, 2010

i heard that weak references can be used for memory optimization, but i really don't understand what it is. does anyone around here know a good tutorial, blog or something that covers this issue?

View 2 Replies

Actionscript 3 :: Advantage / Disadvantage Of Using Weak References In EventListeners?

Aug 5, 2009

I've been teaching myself actionscript 3 over the past month or so and recently ran into an issue where an object kept doing things after I thought it had been removed. I figured out that the problem was caused by an event listener using the default of useWeakReference = false and I'm wondering why that's the default. what is the advantage to not using a weak reference? and why is that the default? it seems to me that in general you'd want to use weak references, so I must be missing something.

View 4 Replies

ActionScript 3.0 :: References And Event Listeners?

May 17, 2010

Lately I've been twitching in the back of my head wondering just how many references to objects that I'm making, and whether or not they are getting GC'd or not.My question in this sense refers to event listeners and whether or not they are removed in certain cases where you get rid of an object. Two examples:

First, and I think this one is an easy one... when you create an object that adds an event listener to itself INSIDE it's own methods (e.g. this.addEventListener(e:Event, function)), when you REMOVE that object (this), do it's event listeners disappear too? I can only say yes, because they are referencing THAT object and are INSIDE that object.

So I think that question answers itself (but I'd love to know if the truth says otherwise).

But secondly, if you add an event listener to an object from a sibling or parent object, and then remove the object, does that event listener stick around, therefore maintaining a reference to that object and keeping it in memory? And is that the concept that people keep referring to of 'weak' event listeners? E.g. someChildObject.addEventListener(e:Event, function)Also, are event listeners by default strong or weak?

And I am assuming that 'yes', it DOES keep the reference. Which, if you are a n00b programmer like me, you probably are all like, 'aww sh*t damn, how am I supposed to make sure that my objects are getting thrown in the garbage collector's mouth of goodness every once in a while?

View 1 Replies

ActionScript 3.0 :: References To The Main Classes And To Add Event Listeners - Using A Command To Initialize

Oct 11, 2010

Before this application runs, I have to do some basic intialising - load up some stuff, build the display list, check I've got the right xml, wire a few objects together. I'm used to doing all of this stuff in the constructor of Main() - my main application class, but it gets a little unwieldy. Would there be any mileage in offloading this into a command class? Is that common practice? I was thinking that way all that Main() would have to do is just listen for events and manipulate methods of the other main classes. The only thing that concerns me is that Main needs references to the main classes and to add event listeners etc. This could be tricky if it's all set up in a command...

View 1 Replies

ActionScript 3.0 :: Proper Use Of Weak Reference?

Jun 8, 2010

As I understand it if I set the weak reference param to true in my event listeners I don't need to worry about removing the listeners. I'm not really clear what would cause the listener to be set for garbage collection. I would hate to have a situation where the listener was removed before I wanted it to.

View 2 Replies

Flex :: Swiz Mandates Weak Encapsulation?

Feb 4, 2010

I just started using Swiz, and, it seems like Swiz forces you to create classes with weak encapsulation. Swiz requires all event handlers to be public in order to mediate events.

Assume that component 'A' dispatches a few events, which I want to listen to in component 'B'. Traditionally, I'll just add event listeners on 'A' in 'B' and all the event handlers in 'B' can be kept private. However, if, I am using Swiz, I need to make all the handlers, mediating events, public.

View 4 Replies

ActionScript 3.0 :: FileReference Type Method ... Weak

Dec 18, 2009

So there I was, creating a small app that allowed user to upload custom images. Everything went smooth, until......<insert horror music here> So you want to validate that its an image, and not something else. Well you restrict it with the File filter...but there are ways around that. So as a double check, you check the file type after a file is selected. <drum roll>

Awesome, the type method returns null if the image doesnt have the proper headers....what the hell....So most images are compressed for smaller file size, thus the headers are stripped out. So...Type method appears to be useless....There was a simple way around this using the name method..but what the hell...type method is weak!!

View 4 Replies

ActionScript 2.0 :: Component Listeners - Write Out The Code For The Listeners?

Jul 24, 2004

I have two components in my movie,how to write out the code for the listeners.Is it possible to write one listener that listens for changes in both components or do I have to write a separate listener for each? How would this look like written out?

View 1 Replies

Actionscript 3 :: Event Listener Added By A Weak Reference

Aug 29, 2011

My problem is basically as follows. There is an instance of a class extending EventDispatcher. Everything goes well when I add event listener to the object like this:

[Code]...

Now someFunction is not called even though the line containing dispatchEvent('eventName') is being executed just like before (and there is an external reference to myObject as well). The application I'm developing is quite complex so, unfortunately, I can't post the exact code.

View 2 Replies

See All External File References In Flash?

Sep 12, 2010

I need to update the dynamic text in this flash file I have and export it to SWF. I've looked at the actionscript in all the frames and symbols but the only thing I've found so far are "stop();" 's

I tried exporting this to SWF to see if the file size was the same as the current working version on the site, and it was about 15kb smaller, and does not work at all.

How can I see all external file references in flash? I need to be able to tell my boss which files are needed or at least what is missing.

View 5 Replies

Flash :: Displaying Flex Object References

Jun 10, 2010

I have a bit of a memory leak issue in my Flex application, and the short version of my question is: is there any way (in AcitonScript 3) to find all live references to a given object? What I have is a number of views with presentation models behind each of them (using Swiz). The views of interest are children of a TabNavigator, so when I close the tab, the view is removed from the stage. When the view is removed from the stage, Swiz sets the model reference in the view to null, as it should. I also removeAllChildren() from the view.

However when profiling the application, when I do this and run a GC, neither the view nor the presentation model are freed (though both set their references to each other to null). One model object used by the view (not a presenter, though) IS freed, so it's not completely broken. I've only just started profiling today (firmly believing in not optimising too early), so I imagine there's some kind of reference floating around somewhere, but I can't see where, and what would be super helpful would be the ability to debug and see a list of objects that reference the target object. Is this at all possible, and if not natively, is there some light-weight way to code this into future apps for debugging purposes?

View 2 Replies

Flash - MovieClip References Going Awry In OnLoadComplete Callback

Mar 9, 2010

I'm loading a bunch of images into my AS2 flash movie, and I've encountered some strangeness.

Roughly, my code looks like this:

function doTheLoading()
{
m_imageClips = [];

[Code].....

why does my array content seem to change when in the onLoadComplete call? If the array is out of scope, then why can I still see the length of the array and determine the type of the contents?

View 1 Replies

Flash :: Flex - Builder - 4 - Using MXML As Views - Any References?

Dec 14, 2010

I'm looking to create a flashBuilder document which uses seperate MXML files as "views" which are controlled by states - I believe it's a design pattern of sorts but I'm relatively new to FlashBuilder. I was wondering if anyone knew what design pattern it was and if I can be pointed in the direction of some good references! FYI I'm looking into using FlashBuilder to design Android apps

View 1 Replies

ActionScript 3.0 :: Flash Start Into Classes And References To Variables

Sep 2, 2010

Long time ago I've been creating some as 2.0 projects, all of them based on the code within the timeline. I wanted to start learning as 3.0 based on classes rather on timeline but I find it confusing and difficult to understand introduction into the classes. I can't get to understand why the following example is not working :

I've got 3 files:
main.fla with main class "Main"

Code:
no code
Main.as

Code:
package {
import flash.display.MovieClip;
import projectconfig.Configurator;
public class Main extends MovieClip {
var projectConfigurator:Configurator;
[Code] .....

View 14 Replies

Flash :: Flex - Find References To The File System In A Application?

Jul 22, 2010

I need to disable all the aspects of functionality which access the client file system in a flash/flex application. I started having a look on how to do this. It appears that the package flash.filesystem need to be importated to allow the interaction with the file system. However, I did not find any reference to this package in the application. I am a beginner concerning these technologies so maybe I am missing a point here. Do I need to look into an other direction?

View 1 Replies

Flash :: Flex - If An Object Is Garbage Collected Are The Reference Counters Of Objects It References Decremented Automatically?

Jun 20, 2011

I was thinking about Flash GC the other day and came up with a question about how reference counting would work in the following 4 class scenario (assume GuiMain is the movie's document class):

[Code]...

View 4 Replies

Flex :: Create Weak Reference And Strong Reference?

May 6, 2010

package uk.co.bigroom.utils
{
import flash.utils.Dictionary;
/**
* Class to create a weak reference to an object. A weak reference

[code]....

In this Class, how they denote one as Weak Reference and one as Strong reference.

View 1 Replies

Flash :: Why Are Event Listeners Firing More Than Once

Jun 14, 2010

In my Flash project I have a movieclip that has 2 keyframes. Both frames contain 1 movieclip each.

frame 1 - Landing
frame 2 - Game

The flow of the application is simple:

User arrives on landing page (frame 1) User clicks "start game" button User is brought to the game page (frame 2) When the game is over, the user can press a "play again" button which brings them back to step 1

Both Landing and Game movieclips are linked to separate classes that define event listeners. The problem is that when I end up back at step 1 after playing the game, the Game event listeners fire twice for their respective event. And if I go through the process a third time, the event listeners fire three times for every event. This keeps happening, so if I loop through the application flow 7 times, the event listeners fire seven times. I don't understand why this is happening because on frame 1, the Game movieclip (and I would assume its related class instance) does not exist - but I'm clearly missing something here.

I've run into this problem in other projects too, and tried fixing it by first checking if the event listeners existed and only defining them if they didn't, but I ended up with unexpected results that didn't really solve the problem.

View 2 Replies

AS3 :: Flash - Define Own Event Listeners?

Nov 9, 2010

How do I define my own event listeners in AS3?

View 3 Replies

AS3 :: Flash - Removing The Event Listeners?

Dec 17, 2010

I have a basic question about manually removing event listeners in actionscript 3.If I have a function like:

private function doStuff(event : Event):void
{
//let them save
var f:FileReference = new FileReference();

[code]...

How do I remove the event listeners when the saveDone function is called? Normally I just change the "add" to "remove" like:

f.removeEventListener(Event.COMPLETE,saveDone);

However, f is a local variable, and I can't get to it after the doStuff function ends.

private function saveDone(ev:Event){
f.removeEventListener(Event.COMPLETE,saveDone);
}

View 3 Replies

ActionScript 2.0 :: How To Get Flash File To Pick Up Listeners

Dec 14, 2009

I'm trying to make a website where you can navigate by keyboard. I'm having difficulties getting the flash file to pick up the listener when upon first logging in. Here's my website: [URL] If you click on the screen you can then press the right arrow to expand the menu. when you log onto the website I want to make it right off the bat where you press the right arrow key and the menu near the top will expand.

ActionScript Code:
stop();
listen = new Object();
listen.onKeyDown = function() {
switch (Key.getCode()) {
case Key.RIGHT :
gotoAndPlay(2)
break;
}}
Key.addListener(listen)

Again, the only way to get that keylistener to pick up pressed keys is to initially click on the screen. Is there any way to get around that?

View 4 Replies

Flash - Event Listeners And Syntax For The Actionpanel?

Mar 4, 2010

I've done most of my code in as3, working from either document class or classes. I've never done action script from within the actions panel (within Flash cs4). My question is do I need to follow the as2 manual in order for majority of code to work ? for example. If I want to do a loop. I can't do a

addEventListener(Event.EnterFrame,loop);
I have to do
varible = onEnterFrame()

[code].....

View 2 Replies

ActionScript 3.0 :: Flash Event - Add Listeners On A MovieClip

Feb 22, 2011

I have this problem with mouse events simply I added two listeners on a movieClip that simply contains two keyframes 1 and 2 the code is in external class file of the movieClip

[Code]...

but when it goes to frame 2 it does not answer the moseUp event and stucks in frame 2

View 1 Replies

Actionscript 3 :: Way To Map Object ID References?

Nov 4, 2010

I'm writing an application where I have many objects (data models) that are identified by a unique String ID that every such object possesses and these objects can refer to each other by their IDs.So far so good but now I need to keep track of which object keeps a reference to another object and of course there are cases where an object references (or is referenced by) more than one other object and I was wondering what would be the best method to store these references? In a simple map data structure I could just map one object's ID to another but as mentioned there are cases where an object can hold a ref to an arbitrary amount of other objects

View 1 Replies

C++ :: Why Some 'Types' Are References While Some Are 'Primitives'

Mar 19, 2012

Types like Movieclip , String, Object act as references when declared and defined, while types like int, Number are primitives. Why such difference has been made. Why not all of them can be primitives ?

View 1 Replies







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