Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 763725
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T16:36:34+00:00 2026-05-14T16:36:34+00:00

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

  • 0
package uk.co.bigroom.utils 
{
    import flash.utils.Dictionary;
    /**
     * Class to create a weak reference to an object. A weak reference
     * is a reference that does not prevent the object from being
     * garbage collected. If the object has been garbage collected
     * then the get method will return null.
     */
    public class WeakRef
    {
        private var dic:Dictionary;

        /**
         * The constructor - creates a weak reference.
         * 
         * @param obj the object to create a weak reference to
         */
        public function WeakRef( obj:* )
        {
            dic = new Dictionary( true );
            dic[obj] = 1;
        }

        /**
         * To get a strong reference to the object.
         * 
         * @return a strong reference to the object or null if the
         * object has been garbage collected
         */
        public function get():*
        {
            for ( var item:* in dic )
            {
                return item;
            }
            return null;
        }
    }
}

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

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-14T16:36:34+00:00Added an answer on May 14, 2026 at 4:36 pm

    the class itself emulates a weak reference, and can be passed around as one.
    if there are no other weak references to the value, it is garbage collected, since the reference to it is established through a dictionary with weak (reference) keys.

    as soon as you get the value within, you obtain a reference of the object itself, which, like all direct object references in ActionScript, is a strong reference. as long as you keep that reference, the object will not be garbage collected.

    edit: Difference between weak and strong references
    During the execution of a program, memory needs to be managed. Low level languages require you to manually allocate memory (get free space) and free it, when the object is no longer needed. Higher level languages use garbage collection. This is a system that tries to determine, whether objects are still needed, or are “garbage”, i.e. can be discarded, freeing the memory they require. To determine, whether an object is needed, the garbage collector tries to find other objects, that “know” this object, i.e. have a reference to it. When an object is referenced by other objects, it is retained (in fact it isn’t, since otherwise unreferenced objects can reference each other cyclically, but let’s not get into details too much).
    Thus “knowing”/referencing an object has the side effect of “keeping it alive”, since it cannot be removed. Sometimes, this side effect is not desidered. For example, if you need a list of all existing objects of some time for quicker access, having this list would keep them from being discarded, even if that very list is the only object to hold references to them. This is why there are weak references, in contrast to normal references that can also be refered to as “strong” since they keep the object from being garbage collected. Weak references allow you to reference an object, but are ignored by the garbage collector. This can often be very helpful, as in the case described above.

    greetz
    back2dos

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 448k
  • Answers 448k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer I would imagine that the main issue you are having… May 15, 2026 at 7:52 pm
  • Editorial Team
    Editorial Team added an answer Ok, I found the error: my matrix was of type… May 15, 2026 at 7:52 pm
  • Editorial Team
    Editorial Team added an answer It sounds like you want to re-use a snippet such… May 15, 2026 at 7:52 pm

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.