On Tue, Feb 15, 2011 at 5:28 PM, Laurent Sansonetti <lsansone...@apple.com> wrote: > Hi Alan, > Do you control the data structure that holds a reference to 'B'? If yes, you > may want to use NSHashTable which supports weak references. > To me, this sounds like a design problem. Maybe your project can be > re-architectured to avoid this pattern.
Weak references and weak lists/hashes are often very useful for caches you need to age out or when you need to associate data with a given instance of an object without holding hard references. Using weak references is definitely not a design problem in itself. I'm also disappointed that you'd recommend people use NSHashTable rather than just fixing WeakRef :) In JRuby, we nuked weakref.rb some time ago because it has a lot of problems. Instead, we wrap the JVM's builtin weakrefs. See also the weakling gem, which (for JRuby) provides additional features mentioned in that Ruby redmine ticket like reference queues and a simple weak ID hash to use in place of _id2ref. - Charlie _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel