Export (0) Print Expand All  Weak References  The garbage
collector cannot collect an object in use by an application
while the application's code can reach that object. The
application is said to have a strong reference to the object.  A
weak reference permits the garbage collector to collect the
object while still allowing the application to access the
object. A weak reference is valid only during the indeterminate
amount of time until the object is collected when no strong
references exist. When you use a weak reference, the application
can still obtain a strong reference to the object, which
prevents it from being collected. However, there is always the
risk that the garbage collector will get to the object first
before a strong reference is reestablished.  Weak references are
useful for objects that use a lot of memory, but can be
recreated easily if they are reclaimed by garbage collection.
Suppose a tree view in a Windows Forms application displays a
complex hierarchical choice of options to the user.