On Jan 20, 2011, at 4:56 PM, Sean McBride wrote:

> On Thu, 20 Jan 2011 13:27:35 -0800, Corbin Dunn said:
> 
>>> For a specific example, check out the AnimatedTableView sample code
>> from Apple.  The ATColorTableController class is a datasource for the
>> table, but it's dealloc looks like:
>>> 
>>> - (void)dealloc
>>> {
>>>  [_colorList release];
>>>  [_colorNames release];
>>>  [_window release];
>>>  [super dealloc];
>>> }
>>> 
>>> Based on my current understanding, the table controller's dealloc
>> (above) should be setting the table datasource and delegate to nil.
>> Correct? If so, I will file a bug.
>> 
>> I wrote that sample, and gave the WWDC talk based on it a few years ago.
>> I also "own" NSTableView.
>> 
>> Yes, please do file a bug. The sample should set the delegate/datasource
>> to nil, as it is good practice to do so, and we can update the sample.
> 
> In the case of garbage collected-only mode, do I assume correctly that
> such setting to nil is not needed?


I thought this might be of interest....Mike Ash writes:

-----
http://www.mikeash.com/pyblog/friday-qa-2010-07-16-zeroing-weak-references-in-objective-c.html
If you're using garbage collection in Objective-C, then good news! The 
Objective-C garbage collector already supports zeroing weak references using 
the type modifier __weak. You can just declare any instance variable like so:

    __weak id _foo;
And it's automatically a zeroing weak reference. The compiler takes care of 
emitting the appropriate read/write barriers so that access is always safe.
-----



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to